<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>
<channel>
	<title>Programmation Archive - Custom Protocol</title>
	<atom:link href="https://www.customprotocol.com/programmation/feed/" rel="self" type="application/rss+xml" />
	<link>https://www.customprotocol.com/programmation/</link>
	<description>Site d&#039;hack-tualité et de tutoriels sur la customisation de consoles et appareils (homebrews, plugins, émulation...)</description>
	<lastBuildDate>Wed, 28 Feb 2018 14:00:15 +0000</lastBuildDate>
	<language>fr-CA</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	
	<item>
		<title>[PS4] [PC] TUTO&#160;-&#160;Installer et utiliser le SDK PS4 officiel</title>
		<link>https://www.customprotocol.com/programmation/ps4-pc-tuto-installer-utiliser-sdk-ps4-officiel/</link>
					<comments>https://www.customprotocol.com/programmation/ps4-pc-tuto-installer-utiliser-sdk-ps4-officiel/#comments</comments>
		
		<dc:creator><![CDATA[valentinbreiz]]></dc:creator>
		<pubDate>Wed, 28 Feb 2018 14:00:15 +0000</pubDate>
				<category><![CDATA[Programmation]]></category>
		<category><![CDATA[Top Articles]]></category>
		<category><![CDATA[Tutoriels]]></category>
		<category><![CDATA[Tutoriels Underground]]></category>
		<category><![CDATA[Underground]]></category>
		<category><![CDATA[3.50 PS4 SDK]]></category>
		<category><![CDATA[4.50 PS4 SDK]]></category>
		<category><![CDATA[Fake PKG Generator]]></category>
		<category><![CDATA[homebrew]]></category>
		<category><![CDATA[PS4 SDK]]></category>
		<guid isPermaLink="false">https://www.customprotocol.com/?post_type=it_programmation&#038;p=15222</guid>
					<description><![CDATA[<p>Voici un tutoriel complet pour vous apprendre comment réaliser votre propre homebrew avec le SDK PS4 officiel sur une PS4 en 4.05&#8239;!</p>
<p>L’article <a rel="nofollow" href="https://www.customprotocol.com/programmation/ps4-pc-tuto-installer-utiliser-sdk-ps4-officiel/">[PS4] [PC] TUTO&nbsp;-&nbsp;Installer et utiliser le SDK PS4 officiel</a> est apparu en premier sur <a rel="nofollow" href="https://www.customprotocol.com">Custom Protocol</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p style="text-align: justify;">Vous avez toujours rêvé de développer de superbes applications pour PS4&#8239;? Si oui, vous êtes sur la bonne page&#8239;! À la fin de ce tuto, vous saurez comment créer votre premier <strong>homebrew</strong> pour <strong>PS4</strong> (hackée, bien sûr) en 4.05 en utilisant le SDK (<em>Software Development Kit</em>) officiel de Sony.</p>
<figure id="attachment_15244" aria-describedby="caption-attachment-15244" style="width: 500px" class="wp-caption aligncenter"><a href="https://www.customprotocol.com/medias/2018/02/ps4sdk.png"><img fetchpriority="high" decoding="async" class="wp-image-15244 size-medium" src="https://www.customprotocol.com/medias/2018/02/ps4sdk-500x333.png" alt="" width="500" height="333" /></a><figcaption id="caption-attachment-15244" class="wp-caption-text">PS4 SDK, nous voilà!&nbsp;<img src="https://s.w.org/images/core/emoji/17.0.2/72x72/1f61b.png" alt="😛" class="wp-smiley" style="height: 1em; max-height: 1em;" /></figcaption></figure>
<hr />
<h4 style="text-align: justify;"><span style="text-decoration: underline;"><strong>0) Pré-requis</strong></span></h4>
<ul style="text-align: justify;">
<li>Une PS4 en 4.05&#8239;;</li>
<li>Un PC (<i>nous utiliserons Windows dans ce tuto. Vous pourrez aussi réaliser ce tuto sur Linux ou Mac, avec Wine pour installer les fichiers du SDK. Les commandes tapées dans le CMD seront identiques à celles que vous pourrez taper dans votre Terminal</i>)&#8239;;</li>
<li>Une gestionnaire d’archives (comme <a href="http://www.spiroo.be/7zip/"><em>7zip)</em></a> ;</li>
<li><a href="https://www.python.org/downloads/release/python-2714/">Python 2.7.14</a>&#8239;;</li>
<li>Visual Studio 2013 (2015 marche sans doute, mais nous ne l'avons pas testé)&#8239;;</li>
<li>Le PS4 SDK 4.50 patché avec les fichiers du PS4 SDK 3.50&#8239;;</li>
<li>Des compétences de base en informatique, ça va de soit.</li>
</ul>
<p style="text-align: justify;"><strong>Les fichiers du SDK PS4 ne seront pas partagés dans cet article</strong> pour des raisons de légalité. Vous pouvez les trouver en demandant aux bonnes personnes&#8239;! Vous trouverez plus d'informations en bas de cette page.</p>
<p style="text-align: justify;"><div align="center" class="alert alert-warning ">Attention&nbsp;: le téléchargement de jeux ou logiciels par le biais de sites de warez est parfaitement illégal, Custom Protocol ne pourra pas être tenu responsable si votre compte se fait bannir et/ou que vous avez affaire à la justice, la peine endurée pouvant s’élever jusqu’à 300 000&nbsp;€ d’amende (500 000&nbsp;€ si vous êtes en bande) et 3 ans d’emprisonnement (5 ans si vous êtes en bande).</div>
<h4 style="text-align: justify;"><span style="text-decoration: underline;"><strong>1) Installation des fichiers nécessaires</strong></span></h4>
<p style="text-align: justify;">Une fois les fichiers (trouvés par vos soins) téléchargés, vous pouvez extraire les fichiers du SDK. Exécutez <em>SDK_Manager.exe</em> en tant qu'administrateur.</p>
<figure id="attachment_15226" aria-describedby="caption-attachment-15226" style="width: 500px" class="wp-caption aligncenter"><a href="https://www.customprotocol.com/medias/2018/02/3-50sdk-1.png"><img decoding="async" class="wp-image-15226 size-medium" src="https://www.customprotocol.com/medias/2018/02/3-50sdk-1-500x270.png" alt="" width="500" height="270" /></a><figcaption id="caption-attachment-15226" class="wp-caption-text">La fenêtre du <em>SDK Manager</em></figcaption></figure>
<p style="text-align: justify;">Vous pouvez installer le tout si vous le souhaitez (y compris les <em>samples</em>). Vous pouvez aussi vous contenter du <em>SDK</em>, mais nous nous servirons de certains samples dans ce tutoriel. Par contre, ce qui est vraiment important, c'est de désactiver <strong>toutes</strong> les mises à jour et d'activer seulement le <em>SDK Patch - 4.508.101</em> (contenu dans le dossier <em>Update (2017-05-31)</em>). Cette mise à jour truquée contient en fait les fichiers du <em>SDK</em> 3.50.</p>
<h4 style="text-align: justify;"><span style="text-decoration: underline;"><strong>2) Utilisation du PS4 SDK</strong></span></h4>
<p style="text-align: justify;">Une fois installé, vous pouvez lancer <em>Visual Studio 2013 </em>(en tant qu'administrateur, c'est important). Créez un nouveau projet pour <em>PS4</em>.</p>
<figure id="attachment_15227" aria-describedby="caption-attachment-15227" style="width: 500px" class="wp-caption aligncenter"><a href="https://www.customprotocol.com/medias/2018/02/visualstudiops4sdk.png"><img decoding="async" class="wp-image-15227 size-medium" src="https://www.customprotocol.com/medias/2018/02/visualstudiops4sdk-500x310.png" alt="" width="500" height="310" /></a><figcaption id="caption-attachment-15227" class="wp-caption-text">Création de projet pour PS4 depuis Visual Studio.</figcaption></figure>
<p style="text-align: justify;">Vous pouvez également utiliser les <em>samples</em> déjà pré-installés si vous les aviez sélectionnés pendant l'installation. Rendez-vous dans <em>C:\Program Files (x86)\SCE\ORBIS SDKs\4.500\target\samples\sample_code </em>pour trouver ces samples. Quelques uns ne sont pas compatibles pour diverses raisons (certains nécessitent une PS4 <em>devkit</em> par exemple).</p>
<p style="text-align: justify;">Pour ce tutoriel, nous allons prendre le projet situé dans "<em>sample_code\graphics\api_font</em>".</p>
<p style="text-align: justify;">Cliquez sur <em>Fichier &gt; Ouvrir &gt; Projet / Solution</em> et sélectionnez votre <em>sample</em> (ici, donc, <em>api_font.sln)</em>. Une fois lancé, vous verrez le code du projet. Je ne vais pas vous expliquer le fonctionnement du code de <em>api_font</em> car il est un peu complexe, mais si vous voulez vous amuser, vous pouvez modifier le texte contenu dans cette variable à la ligne 620.</p>
<figure id="attachment_15228" aria-describedby="caption-attachment-15228" style="width: 500px" class="wp-caption aligncenter"><a href="https://www.customprotocol.com/medias/2018/02/samplecode.png"><img decoding="async" class="wp-image-15228 size-medium" src="https://www.customprotocol.com/medias/2018/02/samplecode-500x144.png" alt="" width="500" height="144" /></a><figcaption id="caption-attachment-15228" class="wp-caption-text">Ça fait beaucoup de code pour un<em> hello world</em>&nbsp;<img src="https://s.w.org/images/core/emoji/17.0.2/72x72/1f61b.png" alt="😛" class="wp-smiley" style="height: 1em; max-height: 1em;" /></figcaption></figure>
<p style="text-align: justify;">Une fois votre code prêt, cliquez sur Build &gt; Build Solution&nbsp;:</p>
<figure id="attachment_15229" aria-describedby="caption-attachment-15229" style="width: 500px" class="wp-caption aligncenter"><a href="https://www.customprotocol.com/medias/2018/02/visualstudiosdk.png"><img decoding="async" class="wp-image-15229 size-medium" src="https://www.customprotocol.com/medias/2018/02/visualstudiosdk-500x266.png" alt="" width="500" height="266" /></a><figcaption id="caption-attachment-15229" class="wp-caption-text">C'est parti&#8239;!</figcaption></figure>
<p style="text-align: justify;">Une fois la construction terminée, rendez-vous dans le dossier <em>\api_font\ORBIS_Debug\.</em> Vous y trouverez le fichier <em>simple_step.elf.</em> Renommez-le en <em>eboot.bin</em>.</p>
<h4 style="text-align: justify;"><span style="text-decoration: underline;"><strong>3) Signer les fichiers</strong></span></h4>
<p style="text-align: justify;">Créez un dossier, où vous le souhaitez, qui va contenir votre <em>homebrew</em>. Placez-y le fichier <em>eboot.bin</em>, ainsi que le dossier <em>sce_sys</em> contenu dans <a href="https://mega.nz/#!sI5wCCAQ!paNaJxNu1FuNnaXWJ44NM5o-v0ER69VVKxZu5J25Xfg">cette archive</a>. Si vous le souhaitez, vous pouvez changer l'icône.<br />Créez ensuite le dossier <em>sce_module.</em></p>
<p style="text-align: justify;">Dans le dossier <em>\api_font\simple_step\sce_module\</em> ont été générés deux fichiers&nbsp;: <em>libc.prx</em> et <em>libSceFios2.prx</em>. Copiez ces fichiers dans <em>sce_module</em>. Votre dossier devrait ressembler à ça&nbsp;:</p>
<p style="text-align: justify;"><a href="https://www.customprotocol.com/medias/2018/02/compiledfiles.png"><img decoding="async" class="aligncenter size-full wp-image-15230" src="https://www.customprotocol.com/medias/2018/02/compiledfiles.png" alt="" width="482" height="64" srcset="https://www.customprotocol.com/medias/2018/02/compiledfiles.png 482w, https://www.customprotocol.com/medias/2018/02/compiledfiles-300x40.png 300w, https://www.customprotocol.com/medias/2018/02/compiledfiles-370x49.png 370w, https://www.customprotocol.com/medias/2018/02/compiledfiles-270x36.png 270w" sizes="(max-width: 482px) 100vw, 482px" /></a></p>
<p style="text-align: justify;">Maintenant, nous allons devoir <span style="text-decoration: underline;">signer l'eboot et les modules</span>. Téléchargez le fichier <em>make_fself.py</em> à <a href="https://mega.nz/#!sA5ERSAY!vlkwA3RcgGKYWJ6v_CLEqS0QZTdzTF_VQXAJiTbIeYs">cette adresse</a>, et glissez-le dans le dossier de votre homebrew, ainsi que dans le dossier <em>sce_modules</em>. Lancez ensuite l'Invité de commande et rentrez les commandes suivantes&nbsp;:</p>
<pre class="lang:default decode:true">cd "chemin-vers-le-dossier-de-l'homebrew"
make_fself.py eboot.bin eboot.bin
cd sce_module
make_fself.py libc.prx libc.prx
make_fself.py libSceFios2.prx libSceFios2.prx</pre>
<figure id="attachment_15231" aria-describedby="caption-attachment-15231" style="width: 500px" class="wp-caption aligncenter"><a href="https://www.customprotocol.com/medias/2018/02/cmd.png"><img decoding="async" class="wp-image-15231 size-medium" src="https://www.customprotocol.com/medias/2018/02/cmd-500x331.png" alt="" width="500" height="331" /></a><figcaption id="caption-attachment-15231" class="wp-caption-text">Patchage de l'eboot et des modules...</figcaption></figure>
<p style="text-align: justify;"> </p>
<p style="text-align: justify;">Une fois les fichiers signés, retirez make_fself.py du dossier. Nous allons maintenant construire le fichier <em>.PKG</em> installable sur votre PS4.</p>
<h4 style="text-align: justify;"><span style="text-decoration: underline;"><strong>4) Construction du package</strong></span></h4>
<p style="text-align: justify;">Commencez par télécharger <a href="https://mega.nz/#!cFIRFLSQ!SQkmyzl4CTShg4HDNL1jAXp-iRQKWhwZtcoA6iRBbk4">cette archive</a>, qui contient les outils nécessaires à la création de .<em>PKG</em>. Exécutez <em>orbis-pub-sfo.exe</em>, cliquez sur <em>File &gt; Open</em> et sélectionnez le fichier <em>param.sfo</em> (présent dans le dossier <em>sce_sys)</em><a href="https://www.customprotocol.com/medias/2018/02/paramfileeditorps4sdk.png"><img decoding="async" class="wp-image-15232 size-medium aligncenter" src="https://www.customprotocol.com/medias/2018/02/paramfileeditorps4sdk-500x270.png" alt="" width="500" height="270" /></a></p>
<p>Éditons le param.sfo&#8239;!</p>
<p style="text-align: justify;">Ici, vous pourrez changer l'<em>ID</em> de votre application ainsi que son nom (<em>Title Text</em>). Sélectionnez le contenu de la case <em>Content ID</em> et copiez-le quelque part où vous pourrez le retrouver facilement plus tard (ici UP9000-NPXX12346_00-TESTAPP200000000).</p>
<p style="text-align: justify;">Une fois vos modifications effectuées, sauvegardez en cliquant sur <em>File &gt; Save</em>.</p>
<p style="text-align: justify;">Fermez cette fenêtre, et exécutez le fichier <em>orbis-pub-gen.exe</em>. Vous allez vous retrouver face à cette fenêtre&nbsp;:</p>
<p><a href="https://www.customprotocol.com/medias/2018/02/fakepkggenerator1.png"><img decoding="async" class="wp-image-15233 size-medium" src="https://www.customprotocol.com/medias/2018/02/fakepkggenerator1-500x322.png" alt="" width="500" height="322" /></a></p>
<p style="text-align: justify;">Double cliquez sur <em>Image0</em>. Une nouvelle fenêtre va s'ouvrir. Glissez-déposez-y (ça m'a fait aussi mal de l'écrire que vous de le lire) le contenu entier du dossier de votre homebrew. Votre fenêtre devrait alors ressembler à ça&nbsp;:<a href="https://www.customprotocol.com/medias/2018/02/fakepkggenerator2.png"><img decoding="async" class="aligncenter size-medium wp-image-15234" src="https://www.customprotocol.com/medias/2018/02/fakepkggenerator2-500x322.png" alt="" width="500" height="322" /></a></p>
<p style="text-align: justify;">Rendez vous dans l'onglet <em>Chunk</em>, faites un clic droit sur <em>Image0 Root</em>, glissez votre souris sur <em>Switch Chunk Assignment of the File(s)</em> et sélectionnez <em>#0&nbsp;: Chunk #0.</em></p>
<figure id="attachment_15235" aria-describedby="caption-attachment-15235" style="width: 500px" class="wp-caption aligncenter"><a href="https://www.customprotocol.com/medias/2018/02/fakepkggenerator3.png"><img decoding="async" class="wp-image-15235 size-medium" src="https://www.customprotocol.com/medias/2018/02/fakepkggenerator3-500x322.png" alt="" width="500" height="322" /></a><figcaption id="caption-attachment-15235" class="wp-caption-text">Cette étape est importante, faites-la correctement.</figcaption></figure>
<p style="text-align: justify;">Vous pouvez maintenant fermer cette fenêtre. De retour sur la fenêtre précédente, cliquez sur <em>Command &gt; Project Settings</em>. Allez maintenant dans l'onglet <em>Package</em> et collez le <em>Content ID</em> que vous avez récupéré plus tôt et sélectionnez "<em>Freemium App".</em></p>
<p style="text-align: justify;">Dans la case <em>Passcode</em>, mettez uniquement des "0". Ainsi, ils pourront être décryptés et modifiés par d'autres utilisateurs&#8239;;)<br />Toutefois, si vous êtes un égoïste, vous pouvez mettre autre chose (mais sachez que l'Univers ne vous apprécie pas beaucoup).</p>
<p><a href="https://www.customprotocol.com/medias/2018/02/fakepkggenerator4.png"><img decoding="async" class="wp-image-15236 size-medium" src="https://www.customprotocol.com/medias/2018/02/fakepkggenerator4-500x401.png" alt="" width="500" height="401" /></a></p>
<p style="text-align: justify;">Une fois tout ceci configuré, cliquez sur "OK", puis sur "<em>Build</em>" lorsque vous en aurez l'occasion. Une autre fenêtre va alors s'ouvrir&nbsp;: sélectionnez l'endroit où votre fichier .<em>PKG </em>sera enregistré dans <em>Output Path.</em> Cliquez sur "<em>Build</em>".</p>
<figure id="attachment_15237" aria-describedby="caption-attachment-15237" style="width: 381px" class="wp-caption aligncenter"><a href="https://www.customprotocol.com/medias/2018/02/fakepkggenerator5.png"><img decoding="async" class="wp-image-15237 size-medium" src="https://www.customprotocol.com/medias/2018/02/fakepkggenerator5-381x500.png" alt="" width="381" height="500" /></a><figcaption id="caption-attachment-15237" class="wp-caption-text">Ici, ne touchez à rien.</figcaption></figure>
<p style="text-align: justify;">La création du package va commencer&#8239;! Une fois terminée, vous aurez ce message:</p>
<figure id="attachment_15238" aria-describedby="caption-attachment-15238" style="width: 500px" class="wp-caption aligncenter"><a href="https://www.customprotocol.com/medias/2018/02/fakepkggenerator6.png"><img decoding="async" class="wp-image-15238 size-medium" src="https://www.customprotocol.com/medias/2018/02/fakepkggenerator6-500x359.png" alt="" width="500" height="359" /></a><figcaption id="caption-attachment-15238" class="wp-caption-text">WOW&#8239;! Aucune erreur&#8239;!</figcaption></figure>
<p style="text-align: justify;">Si tout s'est bien passé, vous devez trouver votre fichier .<em>PKG</em> à l'adresse de destination entrée précédemment.</p>
<h4 style="text-align: justify;"><span style="text-decoration: underline;"><strong>5) Installation du package sur la PS4</strong></span></h4>
<p style="text-align: justify;">Pour installer l'homebrew sur votre PS4, mettez votre fichier <em>.PKG</em> fraîchement généré sur une clé USB ou un disque dur formaté en FAT32 ou ExFAT (la console ne le reconnaîtra pas sinon). Lancez le hack (<a href="https://www.customprotocol.com/underground/ps4-tuto-jailbreak-hack-ps4-en-firware-4-05/">retrouvez notre tuto à cette adresse</a>, si vous ne savez pas faire)<em>.</em> Une fois terminé, transférez le <em>payload</em> <a href="https://mega.nz/#!RQw0XL7R!GcFKPDjCrHcbS6M0dF2IsspIZlKJ91HpBq-jRIGBTeg">PS4HEN</a> sur votre console.</p>
<p style="text-align: justify;">Si tout s'est bien déroulé, vous voir une option supplémentaire à la fin de vos paramètres&nbsp;: <em>Debug Settings</em> (avec la petite étoile devant).</p>
<figure id="attachment_14775" aria-describedby="caption-attachment-14775" style="width: 500px" class="wp-caption aligncenter"><a href="https://www.customprotocol.com/medias/2017/12/debugsettings-1.jpg"><img decoding="async" class="size-medium wp-image-14775" src="https://www.customprotocol.com/medias/2017/12/debugsettings-500x281.jpg" alt="" width="500" height="281" /></a><figcaption id="caption-attachment-14775" class="wp-caption-text">Les <em>Debug Settings</em> (les paramètres de debuggage, quoi)</figcaption></figure>
<p style="text-align: justify;">Branchez votre clé USB à votre console et naviguez dans <em>Game &gt; Package Installer</em>&nbsp;: vous verrez votre fichier .PKG&#8239;! Sélectionnez-le et installez-le. Allez ensuite dans le menu de votre <i>PS4&nbsp;<img src="https://s.w.org/images/core/emoji/17.0.2/72x72/1f600.png" alt="😀" class="wp-smiley" style="height: 1em; max-height: 1em;" /></i></p>
<figure id="attachment_15240" aria-describedby="caption-attachment-15240" style="width: 500px" class="wp-caption aligncenter"><a href="https://www.customprotocol.com/medias/2018/02/app.jpg"><img decoding="async" class="size-medium wp-image-15240" src="https://www.customprotocol.com/medias/2018/02/app-500x281.jpg" alt="" width="500" height="281" /></a><figcaption id="caption-attachment-15240" class="wp-caption-text">Tadah&#8239;! Voici votre application!</figcaption></figure>
<p style="text-align: justify;">Vous pouvez évidemment lancer votre bel homebrew (sinon, quel est l'intérêt&#8239;?)&nbsp;:</p>
<figure id="attachment_15241" aria-describedby="caption-attachment-15241" style="width: 500px" class="wp-caption aligncenter"><a href="https://www.customprotocol.com/medias/2018/02/ps4-homebrew.jpg"><img decoding="async" class="size-medium wp-image-15241" src="https://www.customprotocol.com/medias/2018/02/ps4-homebrew-500x281.jpg" alt="" width="500" height="281" /></a><figcaption id="caption-attachment-15241" class="wp-caption-text">Et voici un petit screenshot du sample executé&#8239;!&nbsp;<img src="https://s.w.org/images/core/emoji/17.0.2/72x72/1f642.png" alt="🙂" class="wp-smiley" style="height: 1em; max-height: 1em;" /></figcaption></figure>
<p style="text-align: justify;"> </p>
<hr />
<figure id="attachment_11300" aria-describedby="caption-attachment-11300" style="width: 500px" class="wp-caption aligncenter"><a href="https://mega.nz/#!pNoimagK!0_gdqDDedR1LDXqgQm0-ki1hgPZU2ZE0DGvMlY9tsb8"><img decoding="async" class="wp-image-11300 size-medium" src="https://www.customprotocol.com/medias/2016/08/bouton-telecharger-v22-500x152.png" alt="" width="500" height="152" /></a><figcaption id="caption-attachment-11300" class="wp-caption-text">Si vous voulez tester cet homebrew, voici le lien!</figcaption></figure>
<p style="text-align: justify;">Voilà voilà, vous savez maintenant comment construire des homebrews pour PS4&#8239;! Plus d'excuses, développeurs et apprentis développeurs, développez vos meilleurs <em>homebrews</em> et jeux&#8239;!&nbsp;<img src="https://s.w.org/images/core/emoji/17.0.2/72x72/1f600.png" alt="😀" class="wp-smiley" style="height: 1em; max-height: 1em;" /></p>
<h4 style="text-align: justify;"><span style="text-decoration: underline;"><strong>5) Post Scriptum</strong></span></h4>
<p style="text-align: justify;">Nous allons ici revenir sur quelques points sur lesquels nous sommes passés trop rapidement dans ce tutoriel. </p>
<p style="text-align: justify;">Tout d'abord, nous ne partagerons pas dans cet article les fichiers du SDK PS4 officiel. Il s'agit en effet d'une suite de logiciels sous licence, et nous ne tenons pas à avoir de problèmes avec Sony (et accessoirement, la justice). On ne vous remet pas le petit panneau, mais on vous rappelle juste que la peine endurée peut s'élever jusqu'à 300 000€ et 3 ans d'emprisonnement. Sachez aussi que tout lien vers le SDK dans les commentaires de cet article (et n'importe où sur ce site/forum) sera systématiquement supprimé et le posteur pourra être banni.</p>
<p style="text-align: justify;">Pour la petite histoire, il y eu d'abord un <em>leak</em> du SDK PS4 4.50, mais malheureusement il ne fonctionnait que pour les PS4 en <em>firmware </em>4.70 minimum (étrange, n'est-ce pas&#8239;?)<em>. </em>Donc, j'étais un peu bloqué quand un ami (<em>Darbness</em>, merci à lui) m'a contacté et donné les fichiers du SDK 3.50, qui lui est compatible avec le <em>firmware</em> 4.05. Nous avons donc fusionné les fichiers du 3.50 avec ceux du 4.50 pour obtenir un SDK fonctionnel.</p>
<p style="text-align: justify;">Concernant le code du sample utilisé dans ce tutoriel, il est effectivement un peu compliqué car, vous vous en doutez sans doute, c'est un peu plus qu'un simple "<em>Hello World</em>". C'est en fait un exemple qui illustre le processus de rendu des caractères en utilisant des librairies de polices. Plus techniquement&nbsp;: ce programme montre en fait la méthode d'assignation de la mémoire à la librairie de polices, et le processus dans lequel les caractères sont rendus par la librairie de polices.<br />Après le chargement des modules de la librairie, ce programme effectue le rendu des caractères et décharge ensuite les modules de la bibliothèque.<br />Enfin, il copie les résultats qui ont effectué le rendu dans la mémoire de la même taille qu'un <em>buffer</em> <em>frame </em>dans les<em> buffers frame</em>. Après ceci, le programme l'affiche pendant 10 secondes, sans changer le contenu des <em>buffers frame</em>. Les résultats rendus sont alors affichés sur l'écran. Voilà, c'est pour cela que ce petit "<em>Hello World</em>" fait en fait 770 lignes&#8239;!</p>
<p style="text-align: justify;">Si vous êtes encore là, merci de nous avoir lu et à très bientôt!&nbsp;<img src="https://s.w.org/images/core/emoji/17.0.2/72x72/1f642.png" alt="🙂" class="wp-smiley" style="height: 1em; max-height: 1em;" /></p>
<hr />
<h4 style="text-align: justify;"><span style="text-decoration: underline;"><u>Crédits et remerciements :</u></span></h4>
<ul style="text-align: justify;">
<li><a href="https://twitter.com/flat_z">Flatz</a> pour le fichier <em>make_fself.py&#8239;;</em></li>
<li><a href="https://twitter.com/Darbnes">Darbness</a> pour m'avoir donné les fichiers du SDK 3.50&#8239;;</li>
<li><a href="https://twitter.com/cfwprophet">cfwprophet</a> pour son <em>Fake PKG Generator&#8239;;</em></li>
<li><a href="https://github.com/VV1LD">VV1LD</a> pour PS4HEN.</li>
</ul>
<p>L’article <a rel="nofollow" href="https://www.customprotocol.com/programmation/ps4-pc-tuto-installer-utiliser-sdk-ps4-officiel/">[PS4] [PC] TUTO&nbsp;-&nbsp;Installer et utiliser le SDK PS4 officiel</a> est apparu en premier sur <a rel="nofollow" href="https://www.customprotocol.com">Custom Protocol</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.customprotocol.com/programmation/ps4-pc-tuto-installer-utiliser-sdk-ps4-officiel/feed/</wfw:commentRss>
			<slash:comments>1</slash:comments>
		
		
			</item>
		<item>
		<title>[Vita] PSVTrimmer &#038; PSVTools&#160;: manipulez vos fichiers « .PSV »</title>
		<link>https://www.customprotocol.com/programmation/vita-psvtrimmer-psvtools-outil-manipuler-fichier-psv/</link>
					<comments>https://www.customprotocol.com/programmation/vita-psvtrimmer-psvtools-outil-manipuler-fichier-psv/#respond</comments>
		
		<dc:creator><![CDATA[Wirus]]></dc:creator>
		<pubDate>Tue, 03 Oct 2017 08:10:18 +0000</pubDate>
				<category><![CDATA[News]]></category>
		<category><![CDATA[News Programmation]]></category>
		<category><![CDATA[News Underground]]></category>
		<category><![CDATA[Outils]]></category>
		<category><![CDATA[Programmation]]></category>
		<category><![CDATA[Underground]]></category>
		<category><![CDATA[PSVTools]]></category>
		<category><![CDATA[PSVTrimmer]]></category>
		<guid isPermaLink="false">https://www.customprotocol.com/?post_type=it_programmation&#038;p=14211</guid>
					<description><![CDATA[<p>Les développerus pez2k et kageurufu ont partagé leurs outils à destination des fichiers «&#160;.PSV&#160;», les ISO new-gen pour PS Vita.</p>
<p>L’article <a rel="nofollow" href="https://www.customprotocol.com/programmation/vita-psvtrimmer-psvtools-outil-manipuler-fichier-psv/">[Vita] PSVTrimmer &#038; PSVTools&nbsp;: manipulez vos fichiers « .PSV »</a> est apparu en premier sur <a rel="nofollow" href="https://www.customprotocol.com">Custom Protocol</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p style="text-align: justify;">Il y a 15 jours, le développeur <em>motoharu</em> - à qui l'on doit déjà les <a href="https://www.customprotocol.com/underground/vita-yifan-lu-presente-poc-adaptateur-microsd/" target="_blank" rel="noopener noreferrer"><em>patchs</em> pour le fonctionnement des <em>SD2Vita</em></a> - avait mis en ligne sur <a href="https://github.com/motoharu-gosuto" target="_blank" rel="noopener noreferrer">son compte <em>GitHub</em></a> le programme <a href="https://github.com/motoharu-gosuto/psvgamesd" target="_blank" rel="noopener noreferrer"><em>Virtual Game Card</em></a>, permettant de réaliser des <em>dumps</em> (copies) de ses jeux depuis une cartouche sans aucune compression au format «&nbsp;.psv&nbsp;».</p>
<p style="text-align: justify;">L'utilisation de ce format «&nbsp;.psv&nbsp;» vient d'être améliorée grâce aux codeurs <em>pez2k</em> et <em>Kageurufu</em>, qui ont partagé au public respectivement <strong>PSVTrimmer</strong>, un logiciel supprimant tous les espaces vides, et <strong>PSVTools</strong>, une boîte d'outils en langage <em>python</em> facilitant la manipulation de ces fichiers.</p>
<figure id="attachment_14224" aria-describedby="caption-attachment-14224" style="width: 764px" class="wp-caption aligncenter"><a href="https://www.customprotocol.com/medias/2017/10/ps-vita-python-psvtools-dump-cartouches-format-.psv-manipulation-outils.png"><img decoding="async" class="size-large wp-image-14224" src="https://www.customprotocol.com/medias/2017/10/ps-vita-python-psvtools-dump-cartouches-format-.psv-manipulation-outils-764x437.png" alt="" width="764" height="437" /></a><figcaption id="caption-attachment-14224" class="wp-caption-text">Oui je me suis déchaîné à faire cette vignette xD</figcaption></figure>
<hr />
<p style="text-align: justify;"><strong>PSVTrimmer</strong> est donc un logiciel <em>open-source</em> développé par <em>pez2k</em> et compatible uniquement avec les ordinateurs sous <em>Windows</em>. Il n'est pour le moment doté que d'une seule fonctionnalité, à savoir la suppression des espaces vides dans les fichiers «&nbsp;.PSV&nbsp;». L'auteur, qui dit par ailleurs trouver l'algorithme relativement simple, n'exclut cependant pas de mettre à jour son projet dans le futur afin d'y implémenter de nouvelles options et une interface graphique (pour afficher une barre de chargement notamment).</p>
<p style="text-align: justify;"><strong>PSVTrimmer</strong> requiert <em>.NET Framework 4.6</em>.</p>
<figure id="attachment_5235" aria-describedby="caption-attachment-5235" style="width: 528px" class="wp-caption aligncenter"><a href="https://github.com/pez2k/PSVTrimmer/releases" target="_blank" rel="noopener noreferrer"><img decoding="async" class="wp-image-5235 size-full" src="https://www.customprotocol.com/medias/2015/06/bouton-telecharger-v2.png" alt="Bouton télécharger" width="528" height="160" srcset="https://www.customprotocol.com/medias/2015/06/bouton-telecharger-v2.png 528w, https://www.customprotocol.com/medias/2015/06/bouton-telecharger-v2-300x91.png 300w, https://www.customprotocol.com/medias/2015/06/bouton-telecharger-v2-370x112.png 370w, https://www.customprotocol.com/medias/2015/06/bouton-telecharger-v2-270x82.png 270w" sizes="(max-width: 528px) 100vw, 528px" /></a><figcaption id="caption-attachment-5235" class="wp-caption-text"><b>PSVTrimmer</b>, par <em>pez2k</em></figcaption></figure>
<hr />
<p style="text-align: justify;"><strong>PVTools</strong> est quant à lui une boîte à outils conçue par <em>kageurufu</em> renfermant plusieurs... outils (merci <em>captain obvious</em>), accessibles via les commandes suivantes&nbsp;:</p>
<ul>
<li style="text-align: justify;"><em>psvtrim</em>, pour couper (<em>trim</em>) des fichiers PSV (réduire leur taille)&#8239;;</li>
<li style="text-align: justify;"><em>psvexpand</em>, pour développer des fichiers coupés (<em>trimmed</em>) et revenir à la taille d'origine&#8239;;</li>
<li style="text-align: justify;"><em>psverify</em>, pour vérifier les sommes de contrôle (<em>checksums</em>) des fichiers PSV.</li>
</ul>
<pre class="lang:default decode:true">usage: psvtools [-h] [-t | -e | -v] [-o OUTPUT] file
positional arguments:
  file                  psv file to operate on
optional arguments:
  -h, --help            show this help message and exit
  -t, --trim            Trim a psv file. This is the default behavior
  -e, --expand          Expand a trimmed psv file
  -v, --verify          Validate the checksum of a psv file
  -o OUTPUT, --output OUTPUT
                        output file to write to
usage: psvexpand [-h] [-o OUTPUT] file
usage: psvtrim [-h] [-o OUTPUT] file
usage: psverify [-h] file</pre>
<p style="text-align: justify;"><strong>PSVTools</strong> ne requiert que l'installation de <em>python</em>, et est donc compatible avec un grand nombre de systèmes d'exploitation (dont MacOS).</p>
<pre class="lang:default decode:true">pip install psvtools</pre>
<figure id="attachment_5235" aria-describedby="caption-attachment-5235" style="width: 528px" class="wp-caption aligncenter"><a href="https://github.com/kageurufu/psvtools/releases" target="_blank" rel="noopener noreferrer"><img decoding="async" class="wp-image-5235 size-full" src="https://www.customprotocol.com/medias/2015/06/bouton-telecharger-v2.png" alt="Bouton télécharger" width="528" height="160" srcset="https://www.customprotocol.com/medias/2015/06/bouton-telecharger-v2.png 528w, https://www.customprotocol.com/medias/2015/06/bouton-telecharger-v2-300x91.png 300w, https://www.customprotocol.com/medias/2015/06/bouton-telecharger-v2-370x112.png 370w, https://www.customprotocol.com/medias/2015/06/bouton-telecharger-v2-270x82.png 270w" sizes="(max-width: 528px) 100vw, 528px" /></a><figcaption id="caption-attachment-5235" class="wp-caption-text"><b>PSVTools</b>, par <em>kageurufu</em></figcaption></figure>
<p>L’article <a rel="nofollow" href="https://www.customprotocol.com/programmation/vita-psvtrimmer-psvtools-outil-manipuler-fichier-psv/">[Vita] PSVTrimmer &#038; PSVTools&nbsp;: manipulez vos fichiers « .PSV »</a> est apparu en premier sur <a rel="nofollow" href="https://www.customprotocol.com">Custom Protocol</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.customprotocol.com/programmation/vita-psvtrimmer-psvtools-outil-manipuler-fichier-psv/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>[Windows] TUTO &#8211; [Partie 2] Utilisation du système de fichiers sous Cosmos</title>
		<link>https://www.customprotocol.com/programmation/windows-utilisation-systeme-de-fichiers-cosmos/</link>
					<comments>https://www.customprotocol.com/programmation/windows-utilisation-systeme-de-fichiers-cosmos/#respond</comments>
		
		<dc:creator><![CDATA[valentinbreiz]]></dc:creator>
		<pubDate>Thu, 18 May 2017 08:47:11 +0000</pubDate>
				<category><![CDATA[Programmation]]></category>
		<category><![CDATA[Tutoriels]]></category>
		<category><![CDATA[Tutoriels Programmation]]></category>
		<category><![CDATA[Cosmos]]></category>
		<category><![CDATA[Cosmos (C# Open Source Managed Operating System)]]></category>
		<category><![CDATA[CosmosOS]]></category>
		<category><![CDATA[FileSystem]]></category>
		<category><![CDATA[OSDev]]></category>
		<category><![CDATA[système de fichiers]]></category>
		<guid isPermaLink="false">https://www.customprotocol.com/?post_type=it_programmation&#038;p=12963</guid>
					<description><![CDATA[<p>Suite du premier tutoriel sur Cosmos, le système d'exploitation écrit en C#. Vous allez ici apprendre à utiliser un système de fichiers&#8239;!</p>
<p>L’article <a rel="nofollow" href="https://www.customprotocol.com/programmation/windows-utilisation-systeme-de-fichiers-cosmos/">[Windows] TUTO &#8211; [Partie 2] Utilisation du système de fichiers sous Cosmos</a> est apparu en premier sur <a rel="nofollow" href="https://www.customprotocol.com">Custom Protocol</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p style="text-align: justify;">Voici une suite au <a href="https://www.customprotocol.com/programmation/windows-creer-son-systeme-exploitation-os-avec-cosmos/">premier tutoriel</a> (mis à jour à la suite de cette deuxième partie, n'hésitez pas à y faire un tour au cas où&nbsp;:P) sur comment créer et lancer sur une machine virtuelle son premier système d'exploitation. Sous forme de console pour l'instant, le système n'est pas pourvu d'un système de fichiers (créer des dossiers/fichiers, se déplacer dans les dossiers, etc.). Nous allons donc ici voir comment faire cela. Faites place au tutoriel&#8239;!</p>
<figure id="attachment_12292" aria-describedby="caption-attachment-12292" style="width: 700px" class="wp-caption aligncenter"><a href="https://www.customprotocol.com/medias/2017/01/cosmos.png"><img decoding="async" class="wp-image-12292 size-full" src="https://www.customprotocol.com/medias/2017/01/cosmos.png" width="700" height="448" srcset="https://www.customprotocol.com/medias/2017/01/cosmos.png 700w, https://www.customprotocol.com/medias/2017/01/cosmos-300x192.png 300w, https://www.customprotocol.com/medias/2017/01/cosmos-370x237.png 370w, https://www.customprotocol.com/medias/2017/01/cosmos-270x173.png 270w, https://www.customprotocol.com/medias/2017/01/cosmos-470x300.png 470w, https://www.customprotocol.com/medias/2017/01/cosmos-570x365.png 570w, https://www.customprotocol.com/medias/2017/01/cosmos-300x192@2x.png 600w" sizes="(max-width: 700px) 100vw, 700px" /></a><figcaption id="caption-attachment-12292" class="wp-caption-text">Logo de <strong>Cosmos</strong></figcaption></figure>
<hr />
<h4 style="text-align: justify;"><span style="text-decoration: underline;"><strong>Utilisation du système de fichiers</strong></span></h4>
<h5 style="text-align: justify;"><strong><span style="text-decoration: underline;">A. Présentation du VFS</span><br /></strong></h5>
<p style="text-align: justify;">Comme défini plus haut, un système de fichiers va vous permettre de créer des fichiers et dossiers depuis votre système d'exploitation et vous déplacer, ouvrir, supprimer ces fichiers, dossiers, etc. Comme pour l'instant l'utilisation de <strong>Cosmos</strong> ne se fait essentiellement que sur machine virtuelle et non sur un support physique, nous allons utiliser ce qu'on appelle un système de fichiers virtuel (VFS) ou comme Wikipédia le définit&nbsp;: "Une couche d'abstraction au-dessus d'un système de fichiers plus concret".</p>
<h5 style="text-align: justify;"><strong><span style="text-decoration: underline;">B. Utilisation du VFS</span><br /></strong></h5>
<p style="text-align: justify;">Lancez <em>Visual Studio</em>, créez un projet ou ouvrez votre projet <em>Cosmos C#</em>. Rendez-vous maintenant dans le fichier <em>Kernel.cs</em>.</p>
<h6 style="text-align: justify;">Initialisation<strong><br /></strong></h6>
<p style="text-align: justify;">Avant d'utiliser le système de fichiers virtuel, il va falloir l'initialiser depuis la boucle <em>BeforeRun()</em> de votre projet (<a href="https://www.customprotocol.com/programmation/windows-creer-son-systeme-exploitation-os-avec-cosmos/">voir le premier tutoriel</a> à la partie 2B pour plus d'informations). Voici le code à utiliser&nbsp;:</p>
<pre class="lang:c# decode:true">FS&nbsp;=&nbsp;new Sys.FileSystem.CosmosVFS();
Sys.FileSystem.VFS.VFSManager.RegisterVFS(FS);</pre>
<p style="text-align: justify;">Il est bon de savoir que le système de fichiers utilisé par <strong>Cosmos</strong> ressemble à celui de <em>Windows</em>, chaque lecteur a sa propre lettre et le répertoire par défaut est "0:\" comme "C:\" sur <em>Windows</em>.</p>
<p style="text-align: justify;">La variable <em>dossier_actuel</em> sera par défaut définie par&nbsp;:</p>
<pre class="lang:c# decode:true">string dossier_actuel&nbsp;=&nbsp;"0:\\";</pre>
<p style="text-align: justify;"><div align="center" class="alert alert-warning ">Il faut impérativement utiliser une double barre oblique ("\\") inversée pour écrire une simple "\".</div>
<h6 style="text-align: justify;"><strong>Commande pour créer un fichier<br /></strong></h6>
<pre class="lang:c# decode:true">var f&nbsp;=&nbsp;File.Create(dossier_actuel&nbsp;+&nbsp;"\\fichier.txt"); //Créer un fichier pour chemin dossier_actuel\fichier.txt
f.Close();</pre>
<h6 style="text-align: justify;"><strong>Commande pour lire un fichier<br /></strong></h6>
<pre class="lang:c# decode:true">string texte&nbsp;=&nbsp;File.ReadAllText(dossier_actuel&nbsp;+&nbsp;"\\fichier.txt"); //La variable 'texte' contiendra le texte contenu dans le fichier</pre>
<h6 style="text-align: justify;"><strong>Commande pour supprimer un fichier<br /></strong></h6>
<pre class="lang:c# decode:true ">File.Delete(dossier_actuel&nbsp;+&nbsp;"\\fichier.txt");</pre>
<h6 style="text-align: justify;"><strong>Commande pour créer un dossier<br /></strong></h6>
<pre class="lang:c# decode:true">FS.CreateDirectory(dossier_actuel&nbsp;+&nbsp;"\\nomdudossier");</pre>
<h6 style="text-align: justify;"><strong>Commande pour supprimer un dossier<br /></strong></h6>
<pre class="lang:c# decode:true">Directory.Delete(dossier_actuel&nbsp;+&nbsp;"\\dossier", true); // 'true' signifie que le contenu du dossier va être également supprimé</pre>
<h6 style="text-align: justify;"><strong>Commande pour se déplacer vers un dossier<br /></strong></h6>
<pre class="lang:c# decode:true">if (input.StartsWith("cd ")) //L'utilisateur entre 'cd nomdudossier'
            {
                var newdir&nbsp;=&nbsp;input.Remove(0, 3); //On extrait le nom du dossier
                if (Directory.Exists(dossier_actuel&nbsp;+&nbsp;newdir))
                //On vérifie si le dossier existe.
                {
                    Directory.SetCurrentDirectory(dossier_actuel);
                    dossier_actuel&nbsp;=&nbsp;dossier_actuel&nbsp;+&nbsp;newdir&nbsp;+&nbsp;"\\";
                }
                else
                {
                    Console.WriteLine("Ce dossier n'existe pas&#8239;!");
                }
            }</pre>
<h6 style="text-align: justify;"><strong>Commande pour se déplacer vers un dossier parent (retour)<br /></strong></h6>
<pre class="lang:default decode:true">var dir&nbsp;=&nbsp;FS.GetDirectory(dossier_actuel);
dossier_actuel&nbsp;=&nbsp;dir.mParent.mFullPath;</pre>
<h6 style="text-align: justify;"><strong>Commande pour lister les dossiers et fichiers du dossier ouvert<br /></strong></h6>
<pre class="lang:c# decode:true">Console.WriteLine("Type\t     Nom");
                foreach (var dir in Directory.GetDirectories(dossier_actuel))
                {
                    Console.WriteLine("&lt;Dossier&gt;\t"&nbsp;+&nbsp;dir);
                }
                foreach (var file in Directory.GetFiles(dossier_actuel))
                {
                    Console.WriteLine("&lt;Fichier&gt;\t"&nbsp;+&nbsp;file);
                }</pre>
<h6 style="text-align: justify;"><strong>Commande pour lister les lecteurs disponibles<br /></strong></h6>
<pre class="lang:c# decode:true ">var vols&nbsp;=&nbsp;FS.GetVolumes();
                Console.WriteLine("Nom\tTaille\tParent");
                foreach (var vol in vols)
                {
                    Console.WriteLine(vol.mName&nbsp;+&nbsp;"\t"&nbsp;+&nbsp;vol.mSize&nbsp;+&nbsp;"\t"&nbsp;+&nbsp;vol.mParent);
                }</pre>
<p style="text-align: justify;">Voilà voilà, vous avez pu voir une liste de différentes commandes utiles à la création d'un système d'exploitation, si vous voulez voir l'application réelle de ces commandes, vous pouvez aller voir la méthode <a href="https://github.com/valentinbreiz/Ode-OS/blob/master/Ode%20OS/Kernel.cs#L505">I<em>nterpredCMD</em></a> d'un petit système d'exploitation réalisé par mes soins, où ces commandes y sont inscrites (Ctrl&nbsp;+&nbsp;F pour rechercher dans la page&#8239;;) ).</p>
<h5 style="text-align: justify;"><strong><span style="text-decoration: underline;">C. Exemple d'implémentation du système de fichiers</span><br /></strong></h5>
<p style="text-align: justify;">Maintenant, depuis votre console, vous pouvez implémenter différentes commandes. Voici un algorithme basique qui va pouvoir interpréter les commandes transmises depuis l'utilisateur (comme depuis le CMD sur <em>Windows</em>) et permettre la création et suppression d'un dossier. Ensuite, à vous d'implémenter vos propres commandes&#8239;!</p>
<pre class="lang:c# decode:true">using System;
using Sys&nbsp;=&nbsp;Cosmos.System;
using System.IO;
using Cosmos.System.FileSystem;
// Ceci permet d'importer des références.
namespace Custom_Protocol
{
    public class Kernel&nbsp;: Sys.Kernel
    {
        string dossier_actuel&nbsp;=&nbsp;"0:\\";
        public CosmosVFS FS { get; private set; }
        protected override void BeforeRun()
        //Ceci est le code exécuté avant l'exécution du programme.
        {
            Console.Clear();
            //Permet de nettoyer la console des logs de démarrage.
            //On met le clavier en français
            Sys.KeyboardManager.SetKeyLayout(new Sys.ScanMaps.FR_Standard());
            //Initialisation du système de fichier.
            FS&nbsp;=&nbsp;new Sys.FileSystem.CosmosVFS();
            Sys.FileSystem.VFS.VFSManager.RegisterVFS(FS);
            //Fin de l'initialisation
            Console.WriteLine("Tutoriel de customprotocol.com");
            Console.WriteLine("Cosmos a demarre avec succes.");
            //Ceci permet d'écrire une ligne.
        }
        protected override void Run()
        //Ceci est le code exécuté pendant l'exécution du programme, il se répétera indéfiniment.
        {
            Console.Write("commande&gt; ");
            //Ceci permet d'écrire une ligne ou l'on peut écrire sur la même ligne.
            var input&nbsp;=&nbsp;Console.ReadLine();
            //Ceci est une variable qui permet de lire le texte écrit par l'utilisateur.
            InterpretCMD(input);
            //Ceci permet de lancer la méthode qui va interpréter la commande (input)
        }
        private void InterpretCMD(string input)
        //Ceci est la méthode qui interprète la commande envoyée (d'où le "string input") 
        {
            if (input.StartsWith("dir -c ")) //Si la commande commence par dir -c
            {
                string dir&nbsp;=&nbsp;input.Remove(0, 7); //On extrait la commande
                if (!Directory.Exists(dossier_actuel&nbsp;+&nbsp;dir)) //Si le dossier n'existe pas (! symbole de négation)
                {
                    FS.CreateDirectory(dossier_actuel&nbsp;+&nbsp;dir); //On créer le dossier
                    Console.WriteLine("Dossier cree&#8239;!");
                }
                else if (Directory.Exists(dossier_actuel&nbsp;+&nbsp;dir)) //Sinon si le dossier existe alors
                {
                    Console.WriteLine("Le dossier existe deja&#8239;!");
                    Console.WriteLine("Dossier cree&#8239;!");
                    FS.CreateDirectory(dossier_actuel&nbsp;+&nbsp;dir&nbsp;+&nbsp;"-1"); //On créer tout de même un dossier avec comme nom 'nomdudossier-1'
                }
            }
            else if (input.StartsWith("dir -r ")) //Si la commande commence par dir -r alors
            {
                string dirr&nbsp;=&nbsp;input.Remove(0, 7); //On extrait le nom du dossier de la commande
                if (Directory.Exists(dossier_actuel&nbsp;+&nbsp;dirr)) //Si le dossier existe alors
                {
                    Directory.Delete(dossier_actuel&nbsp;+&nbsp;dirr, true); //On le supprime
                    Console.WriteLine("Le dossier '"&nbsp;+&nbsp;dirr&nbsp;+&nbsp;"' a ete supprime&#8239;!");
                }
                else //Si il n'existe pas
                {
                    Console.WriteLine("Le dossier '"&nbsp;+&nbsp;dirr&nbsp;+&nbsp;"' n'existe pas&#8239;!");
                }
            }
            else if (input == "dir -l") //Si la commande est égale à dir -l
            {
                Console.WriteLine("Type\t     Nom");
                foreach (var dir in Directory.GetDirectories(dossier_actuel)) //On récupere tous les dossiers
                {
                    Console.WriteLine("&lt;Dossier&gt;\t"&nbsp;+&nbsp;dir); //On affiche tous les dossiers
                }
            }
            else if (input == "hello")
            { //Si la commande est égale à hello alors
                Console.WriteLine("Bonjour!"); //Afficher "Bonjour!".
            }
            else if (input == "bye")
            { //Sinon si la commande est égale à bye
                Sys.Power.Shutdown(); //Éteindre le système.
            }
            else
            { //Sinon (si la commande n'est ni hello ni bye)
                Console.WriteLine("Erreur&nbsp;: Commande inconnue"); //Afficher la commande est inconnue.
            }
        }
    }
}</pre>
<h4 style="text-align: justify;"><span style="text-decoration: underline;"><strong>3) Conclusion</strong></span></h4>
<p style="text-align: justify;">À travers ce tutoriel, vous avez pu voir comment utiliser un système de fichiers dans votre projet <strong>Cosmos</strong>. Amusez-vous, développez et partagez votre projet&#8239;! Si vous manquez d'inspiration, voici même une page comprenant plusieurs projets sous <strong>Cosmos</strong>&nbsp;: <em><a href="https://github.com/CosmosOS/Cosmos/wiki/Cosmos-Projects">Cosmos Projects</a></em>.</p>
<p style="text-align: justify;">D'autres tutoriels à propos de <strong>Cosmos</strong> arriveront sur <strong>Custom Protocol</strong> bientôt, si vous avez besoin de quoi que ce soit vous pouvez poser une question en commentaire ou sur la <a href="https://gitter.im/CosmosOS/Cosmos">conversation Gitter</a> du projet <strong>Cosmos</strong>&#8239;!&#8239;;)</p>
<p>L’article <a rel="nofollow" href="https://www.customprotocol.com/programmation/windows-utilisation-systeme-de-fichiers-cosmos/">[Windows] TUTO &#8211; [Partie 2] Utilisation du système de fichiers sous Cosmos</a> est apparu en premier sur <a rel="nofollow" href="https://www.customprotocol.com">Custom Protocol</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.customprotocol.com/programmation/windows-utilisation-systeme-de-fichiers-cosmos/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>[3DS] La bibliothèque SDL portée par nop90</title>
		<link>https://www.customprotocol.com/programmation/3ds-bibliotheque-sdl-portee-nop90/</link>
					<comments>https://www.customprotocol.com/programmation/3ds-bibliotheque-sdl-portee-nop90/#respond</comments>
		
		<dc:creator><![CDATA[Wirus]]></dc:creator>
		<pubDate>Fri, 24 Mar 2017 16:23:08 +0000</pubDate>
				<category><![CDATA[News]]></category>
		<category><![CDATA[News Programmation]]></category>
		<category><![CDATA[Programmation]]></category>
		<category><![CDATA[SDL]]></category>
		<category><![CDATA[SDL-3DS]]></category>
		<guid isPermaLink="false">https://www.customprotocol.com/?post_type=it_programmation&#038;p=12797</guid>
					<description><![CDATA[<p>Si vous êtes développeur et que vous avez du temps libre, il est peut-être temps de vous lancer dans la programmation d'un homebrew 3DS&#8239;!</p>
<p>L’article <a rel="nofollow" href="https://www.customprotocol.com/programmation/3ds-bibliotheque-sdl-portee-nop90/">[3DS] La bibliothèque SDL portée par nop90</a> est apparu en premier sur <a rel="nofollow" href="https://www.customprotocol.com">Custom Protocol</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p style="text-align: justify;">La bibliothèque <strong>Simple DirectMedia Layer </strong>est l'une des plus connues pour le développement de jeux vidéo 2D amateurs. Elle est écrite en C et, en plus d'être assez facilement accessible pour les débutants, gère un large nombre de fonctionnalités telles que l'affichage vidéo, l'événement, l'audio, le <em>multithreading</em>...</p>
<figure id="attachment_12798" aria-describedby="caption-attachment-12798" style="width: 764px" class="wp-caption aligncenter"><a href="https://www.customprotocol.com/medias/2017/03/sdl-bibliotheque-portee-sur-3ds-par-nop90.png"><img decoding="async" class="size-large wp-image-12798" src="https://www.customprotocol.com/medias/2017/03/sdl-bibliotheque-portee-sur-3ds-par-nop90-764x594.png" alt="" width="764" height="594" /></a><figcaption id="caption-attachment-12798" class="wp-caption-text"><em>Crédit photo&nbsp;: <a href="https://www.amazon.fr/New-Nintendo-3DS-XL-Black/dp/B00S1LRX3W" target="_blank" rel="noopener noreferrer">Amazon</a></em></figcaption></figure>
<hr />
<p style="text-align: justify;">Le développeur <em>nop90</em> a décidé de créer un portage <em>clean</em> de <strong>SDL</strong>, afin qu'il puisse dans le futur être facilement fusionné avec la version officielle de <strong>SDL</strong>. Un ensemble de <em>flags</em> personnalisés a été ajouté par l'auteur afin de gérer les particularités de la console 3DS (le joystick droit par exemple).</p>
<p style="text-align: justify;">Les autres bibliothèques telles que <em>SDL_Image </em>(pour les images), <em>SDL_TTF </em>(pour les polices) ou <em>SDL_Mixer</em> (pour l'audio) peuvent également être compilées sans problème tant que la lib <strong>SDL-3DS</strong> est correctement compilée et installée dans votre boîte à outils <em>DevkitArm</em>. <em>Nop90</em> a indiqué par ailleurs qu'il incluerait plus tard un <em>Makefile</em> afin de pouvoir tout compiler facilement.</p>
<figure id="attachment_5235" aria-describedby="caption-attachment-5235" style="width: 528px" class="wp-caption aligncenter"><a href="https://github.com/nop90/SDL-3DS" target="_blank" rel="noopener noreferrer"><img decoding="async" class="wp-image-5235 size-full" src="https://www.customprotocol.com/medias/2015/06/bouton-telecharger-v2.png" alt="Bouton télécharger" width="528" height="160" srcset="https://www.customprotocol.com/medias/2015/06/bouton-telecharger-v2.png 528w, https://www.customprotocol.com/medias/2015/06/bouton-telecharger-v2-300x91.png 300w, https://www.customprotocol.com/medias/2015/06/bouton-telecharger-v2-370x112.png 370w, https://www.customprotocol.com/medias/2015/06/bouton-telecharger-v2-270x82.png 270w" sizes="(max-width: 528px) 100vw, 528px" /></a><figcaption id="caption-attachment-5235" class="wp-caption-text"><b>SDL-3DS</b>, par <em>nop90</em></figcaption></figure>
<p style="text-align: justify;">Notez que c'est la version 1.2 de <strong>SDL</strong> qui a été portée, bien que ça soit la version 2 la plus populaire. L'auteur justifie cela en disant qu'il trouve la version 1.2 meilleure, mais annonce que de toute façon il planche sur un portage futur de la version 2, en reprenant les travaux non-finits de <em>xerpi</em>.</p>
<p style="text-align: justify;">Et voici quelques <em>screenshots</em> issus de jeux développés à l'aide de <strong>SDL-3DS</strong>&nbsp;:</p>
<a class="gridlove-popup" href='https://www.customprotocol.com/medias/2017/03/supertux-milestone-1-3ds-screenshot.png'><img decoding="async" width="400" height="240" src="https://www.customprotocol.com/medias/2017/03/supertux-milestone-1-3ds-screenshot.png" class="attachment-gridlove-single size-gridlove-single" alt="" srcset="https://www.customprotocol.com/medias/2017/03/supertux-milestone-1-3ds-screenshot.png 400w, https://www.customprotocol.com/medias/2017/03/supertux-milestone-1-3ds-screenshot-300x180.png 300w, https://www.customprotocol.com/medias/2017/03/supertux-milestone-1-3ds-screenshot-370x222.png 370w, https://www.customprotocol.com/medias/2017/03/supertux-milestone-1-3ds-screenshot-270x162.png 270w" sizes="(max-width: 400px) 100vw, 400px" /></a>
<a class="gridlove-popup" href='https://www.customprotocol.com/medias/2017/03/opentyrian-3ds-screenshot.png'><img decoding="async" width="400" height="240" src="https://www.customprotocol.com/medias/2017/03/opentyrian-3ds-screenshot.png" class="attachment-gridlove-single size-gridlove-single" alt="" srcset="https://www.customprotocol.com/medias/2017/03/opentyrian-3ds-screenshot.png 400w, https://www.customprotocol.com/medias/2017/03/opentyrian-3ds-screenshot-300x180.png 300w, https://www.customprotocol.com/medias/2017/03/opentyrian-3ds-screenshot-370x222.png 370w, https://www.customprotocol.com/medias/2017/03/opentyrian-3ds-screenshot-270x162.png 270w" sizes="(max-width: 400px) 100vw, 400px" /></a>
<a class="gridlove-popup" href='https://www.customprotocol.com/medias/2017/03/hex-a-hop-3ds-screenshot.png'><img decoding="async" width="400" height="240" src="https://www.customprotocol.com/medias/2017/03/hex-a-hop-3ds-screenshot.png" class="attachment-gridlove-single size-gridlove-single" alt="" srcset="https://www.customprotocol.com/medias/2017/03/hex-a-hop-3ds-screenshot.png 400w, https://www.customprotocol.com/medias/2017/03/hex-a-hop-3ds-screenshot-300x180.png 300w, https://www.customprotocol.com/medias/2017/03/hex-a-hop-3ds-screenshot-370x222.png 370w, https://www.customprotocol.com/medias/2017/03/hex-a-hop-3ds-screenshot-270x162.png 270w" sizes="(max-width: 400px) 100vw, 400px" /></a>
<p style="text-align: justify;"><blockquote><p><div align="justify"><em>J'espère qu'avec la disponibilité de cette bibliothèque bien connue sur la 3DS, nous verrons de plus en plus de développeurs coder pour cette console.</em></div> <small><cite title="nop90">nop90</cite></small></p></blockquote>
<p>L’article <a rel="nofollow" href="https://www.customprotocol.com/programmation/3ds-bibliotheque-sdl-portee-nop90/">[3DS] La bibliothèque SDL portée par nop90</a> est apparu en premier sur <a rel="nofollow" href="https://www.customprotocol.com">Custom Protocol</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.customprotocol.com/programmation/3ds-bibliotheque-sdl-portee-nop90/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>[Windows] TUTO &#8211; [Partie 1] [MàJ le 18/05/2017] Créer son système d&#8217;exploitation avec Cosmos</title>
		<link>https://www.customprotocol.com/programmation/windows-creer-son-systeme-exploitation-os-avec-cosmos/</link>
					<comments>https://www.customprotocol.com/programmation/windows-creer-son-systeme-exploitation-os-avec-cosmos/#comments</comments>
		
		<dc:creator><![CDATA[valentinbreiz]]></dc:creator>
		<pubDate>Sun, 08 Jan 2017 14:01:46 +0000</pubDate>
				<category><![CDATA[Programmation]]></category>
		<category><![CDATA[Tutoriels]]></category>
		<category><![CDATA[Tutoriels Programmation]]></category>
		<category><![CDATA[Cosmos]]></category>
		<category><![CDATA[Cosmos (C# Open Source Managed Operating System)]]></category>
		<category><![CDATA[CosmosOS]]></category>
		<guid isPermaLink="false">https://www.customprotocol.com/?post_type=it_programmation&#038;p=12233</guid>
					<description><![CDATA[<p>Dans ce premier tutoriel vous allez apprendre à créer votre premier système d'exploitation avec le projet Cosmos&#8239;!</p>
<p>L’article <a rel="nofollow" href="https://www.customprotocol.com/programmation/windows-creer-son-systeme-exploitation-os-avec-cosmos/">[Windows] TUTO &#8211; [Partie 1] [MàJ le 18/05/2017] Créer son système d&#8217;exploitation avec Cosmos</a> est apparu en premier sur <a rel="nofollow" href="https://www.customprotocol.com">Custom Protocol</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p style="text-align: justify;"><div align="center" class="alert alert-success ">Ce tutoriel fut mise à jour le 18/05/2017, avec une autre méthode d'installation <em>dev-kit</em> bien plus pratique et efficace&#8239;! N'hésitez pas à re-suivre cette procédure au cas où&#8239;!&nbsp;<img src="https://s.w.org/images/core/emoji/17.0.2/72x72/1f600.png" alt="😀" class="wp-smiley" style="height: 1em; max-height: 1em;" /></div>À travers ce tutoriel et une future suite de tutoriels, nous allons apprendre à créer notre propre <em>OS</em>, ou plutôt <strong>le vôtre</strong> ! Nous n'allons évidemment pas surpasser<em> Windows</em> ou <em>Ubuntu</em>, ce sera un petit OS fait maison <strong>pour les passionnés et débutants en programmation</strong>&#8239;! Nous n'allons pas utiliser de langage assembleur, ne créerons un noyau, nous le programmerons simplement en <em>C#</em> avec l'aide du projet <strong>Cosmos</strong>, magnifique non&#8239;?</p>
<p style="text-align: justify;"><a href="https://www.customprotocol.com/medias/2017/01/cosmos.png"><img decoding="async" class="aligncenter size-full wp-image-12292" src="https://www.customprotocol.com/medias/2017/01/cosmos.png" alt="cosmos" width="700" height="448" srcset="https://www.customprotocol.com/medias/2017/01/cosmos.png 700w, https://www.customprotocol.com/medias/2017/01/cosmos-300x192.png 300w, https://www.customprotocol.com/medias/2017/01/cosmos-370x237.png 370w, https://www.customprotocol.com/medias/2017/01/cosmos-270x173.png 270w, https://www.customprotocol.com/medias/2017/01/cosmos-470x300.png 470w, https://www.customprotocol.com/medias/2017/01/cosmos-570x365.png 570w, https://www.customprotocol.com/medias/2017/01/cosmos-300x192@2x.png 600w" sizes="(max-width: 700px) 100vw, 700px" /></a></p>
<hr />
<p style="text-align: justify;">Une petite présentation de notre support s'impose, comme ce tutoriel est ciblé aux débutants et que je ne suis pas expert en programmation, je vais m'appuyer sur le super, que dis-je, le magnifique <a href="https://github.com/CosmosOS/Cosmos">projet <strong>Cosmos</strong></a>.</p>
<p style="text-align: justify;"><strong>Cosmos</strong> est un système d'exploitation, ou plutôt un "kit de construction", basé sur <em>SysLinux</em> autour du compilateur <em>IL2CPU</em> (créé par les mêmes développeurs que <strong>CosmosOS</strong>). <em>COSMOS</em> signifie d'ailleurs <em>C# Open Source Managed Operating System</em>.</p>
<p style="text-align: justify;">Bref,<strong> Cosmos</strong> n'est donc pas un système d'exploitation à proprement parler, mais plutôt un «&nbsp;kit de création de système d'exploitation&nbsp;». <strong>Cosmos</strong> va vous permettre de créer des systèmes d'exploitation sur <em>Visual Studio</em> et en <em>C#</em> (ou <em>Visual Basic</em>). Le véritable point fort de <em>Cosmos</em> réside dans le fait qu'il est intégré à <em>Visual Studio</em>, ce qui va permettre un développement sous <em>Windows</em> accompagné d'éléments essentiels. En effet, <em>Visual Studio</em> (avec <strong>Cosmos</strong>) va débugger et générer votre <em>OS</em> avant de l'envoyer à une machine virtuelle.</p>
<figure id="attachment_12273" aria-describedby="caption-attachment-12273" style="width: 488px" class="wp-caption aligncenter"><a href="https://www.customprotocol.com/medias/2017/01/cosmos_logo.png"><img decoding="async" class="wp-image-12273 size-full" title="cosmos" src="https://www.customprotocol.com/medias/2017/01/cosmos_logo.png" alt="Logo CosmosOS" width="488" height="100" srcset="https://www.customprotocol.com/medias/2017/01/cosmos_logo.png 488w, https://www.customprotocol.com/medias/2017/01/cosmos_logo-300x61.png 300w, https://www.customprotocol.com/medias/2017/01/cosmos_logo-370x76.png 370w, https://www.customprotocol.com/medias/2017/01/cosmos_logo-270x55.png 270w" sizes="(max-width: 488px) 100vw, 488px" /></a><figcaption id="caption-attachment-12273" class="wp-caption-text">Logo officiel de <b>Cosmos</b></figcaption></figure>
<h4 style="text-align: justify;"><span style="text-decoration: underline;"><strong>1) Installation de Cosmos (dev-kit)<br /></strong></span></h4>
<p>La dernière version officielle du projet <strong>Cosmos</strong> étant parue il y a déjà plusieurs années, il va falloir mettre à jour celle que vous avez déjà installée et si ce n'est pas déjà fait, l'installer. Car depuis, il y a eu plusieurs corrections de <em>bugs</em>, d'ajouts, qui améliorent fortement l'expérience utilisateur.</p>
<p>Il existe deux kits pour <strong>Cosmos</strong>, l'<em>user-kit</em> et le <em>dev-kit</em>. C'est ce dernier que nous allons compiler pour pouvoir profiter des mises à jour (dont beaucoup sur le système de fichiers que nous verrons un peu plus tard&nbsp;:P).</p>
<h5 style="text-align: justify;"><span style="text-decoration: underline;"><strong>A. Pré-requis</strong></span></h5>
<ul>
<li style="text-align: justify;">Un minimum de connaissances en algorithmique (C# ou VB par exemple)&#8239;;</li>
<li style="text-align: justify;">Être sous <em>Windows 7</em> au minimum&#8239;;</li>
<li style="text-align: justify;"><em>Visual Studio Community 2015</em> (à <a href="http://www.01net.com/telecharger/windows/Programmation/creation/fiches/134695.html">télécharger ici</a>)&#8239;;</li>
<li style="text-align: justify;">.<em>NET Framework 4.5</em> (à <a href="https://www.microsoft.com/fr-FR/download/details.aspx?id=30653">télécharger ici</a>)&#8239;;</li>
<li style="text-align: justify;"><em>VMWare Player</em> (version gratuite) (à <a href="https://my.vmware.com/en/web/vmware/free#desktop_end_user_computing/vmware_workstation_player/12_0">télécharger ici</a>)&#8239;;</li>
<li style="text-align: justify;"><em>.NET Framework 3.5 SP1</em>, quelques composants requérant cette version (à <a href="https://www.microsoft.com/fr-FR/download/details.aspx?id=22">télécharger ici</a>).<strong><br /></strong></li>
</ul>
<h5 style="text-align: justify;"><span style="text-decoration: underline;"><strong>B. Installation de Cosmos</strong></span></h5>
<p style="text-align: justify;">Premièrement, commencez par télécharger <a href="https://github.com/CTPBenchmark/Cosmos">ce répertoire</a> (cliquez sur le bouton vert '<em>Clone or Download</em>' puis '<em>Download ZIP</em>') que je vous ai moi-même concocté, comprenant de nombreux correctifs et quelques ajouts. Décompressez ensuite l'archive ZIP sur votre bureau par exemple ou dans un dossier dédié (parce que c'est plus propre).</p>
<p style="text-align: justify;"><div align="center" class="alert alert-warning ">Assurez-vous que ni <em>Visual Studio 2015</em> ni <em>VMWare</em> ne sont en cours d’utilisation&#8239;!</p>
<p style="text-align: justify;">Et assurez-vous que vous n’êtes pas en train de faire des mises à jour <em>Windows</em>, ce qui pourrait éteindre votre ordinateur, ou quelque chose d’autre de stupide.&nbsp;<img src="https://s.w.org/images/core/emoji/17.0.2/72x72/1f61b.png" alt="😛" class="wp-smiley" style="height: 1em; max-height: 1em;" /></div>
<p style="text-align: justify;">Lancez maintenant le fichier "<span class="css-truncate css-truncate-target">install-VS2015.bat</span>".</p>
<p style="text-align: justify;"><div align="center" class="alert alert-info ">Si <strong>Cosmos</strong> est déjà installé sur votre machine, il n'y a rien à faire&#8239;! La compilation du <em>dev-kit</em> va automatiquement supprimer les anciennes versions.</div>
<figure id="attachment_13117" aria-describedby="caption-attachment-13117" style="width: 500px" class="wp-caption aligncenter"><a href="https://www.customprotocol.com/medias/2017/05/installation-cosmos.png"><img decoding="async" class="wp-image-13117 size-medium" src="https://www.customprotocol.com/medias/2017/05/installation-cosmos-500x261.png" width="500" height="261" /></a><figcaption id="caption-attachment-13117" class="wp-caption-text">Console d'installation de <strong>Cosmos</strong> made in <strong>CTP</strong>&nbsp;<img src="https://s.w.org/images/core/emoji/17.0.2/72x72/1f61b.png" alt="😛" class="wp-smiley" style="height: 1em; max-height: 1em;" /></figcaption></figure>
<p>Une fois le programme d'installation lancé, il va tout effectuer tout seul et vous pourrez voir les résultats dans cette fenêtre&nbsp;:</p>
<figure id="attachment_13084" aria-describedby="caption-attachment-13084" style="width: 500px" class="wp-caption aligncenter"><a href="https://www.customprotocol.com/medias/2017/05/cosmos-devkit-installer.png"><img decoding="async" class="wp-image-13084 size-medium" src="https://www.customprotocol.com/medias/2017/05/cosmos-devkit-installer-500x353.png" width="500" height="353" /></a><figcaption id="caption-attachment-13084" class="wp-caption-text">La compilation de <strong>Cosmos</strong> a réussie, on passe à l'installation (<em>Running Setup</em>)&#8239;!</figcaption></figure>
<p style="text-align: justify;">L'installation n'a normalement pas dû prendre de temps et si tout s'est bien passé, <em>Visual Studio</em> s'est lancé en ouvrant la solution "Cosmos" (où vous pouvez éditer ou voir le code source si vous êtes curieux) et le programme d'installation affiche alors en vert&nbsp;: <em>Build Complete!</em></p>
<p>&nbsp;</p>
<hr />
<h4 style="text-align: justify;"><span style="text-decoration: underline;">2) Créer son premier OS</span></h4>
<h5 style="text-align: justify;"><span style="text-decoration: underline;"><strong>A. Création du projet</strong></span></h5>
<p style="text-align: justify;">Lancez <em>Visual Studio</em>, appuyez sur "Nouveau projet...", cette fenêtre se lance alors&nbsp;:</p>
<figure id="attachment_12253" aria-describedby="caption-attachment-12253" style="width: 500px" class="wp-caption aligncenter"><a href="https://www.customprotocol.com/medias/2017/01/cosmosprojet.png"><img decoding="async" class="wp-image-12253 size-medium" src="https://www.customprotocol.com/medias/2017/01/cosmosprojet-500x310.png" alt="Fenêtre créer un nouveau projet" width="500" height="310" /></a><figcaption id="caption-attachment-12253" class="wp-caption-text">Fenêtre "créer un nouveau projet"</figcaption></figure>
<p style="text-align: justify;">Créez un nouveau projet comme n'importe quel projet <em>C#</em>, mais sélectionnez <strong>Cosmos</strong> comme type de projet. Vous pouvez ensuite choisir de programmer votre <em>OS</em> en<em> C#</em> ou en <em>Visual Basic</em> (je conseille le <em>C#</em> mais <em>Visual Basic</em> est tout aussi bien).</p>
<p style="text-align: justify;">Renseignez ensuite le nom de votre projet, ici "Custom Protocol". Appuyez ensuite sur "OK".</p>
<p style="text-align: justify;">Oh, diable, du code&#8239;! Ne vous inquiétez&nbsp;: tout va être expliqué.</p>
<h5 style="text-align: justify;"><span style="text-decoration: underline;"><strong>B. Le code</strong></span></h5>
<p style="text-align: justify;">Tout d'abord, on peut remarquer que votre nouveau projet ressemble beaucoup à une application console <em>C #</em> standard.</p>
<p><a href="https://www.customprotocol.com/medias/2017/01/explorateur.png"><img decoding="async" class="alignleft wp-image-12256 size-full" src="https://www.customprotocol.com/medias/2017/01/explorateur.png" alt="explorateur" width="240" height="136" /></a></p>
<p style="text-align: justify;">Pour l'instant, il faudra rester dans <em>"C# Custom Protocol"</em> et non dans "Custom ProtocolBoot".</p>
<p style="text-align: justify;">Le fichier <em>Kernel.cs</em> contient le code d'amorçage et d'exécution de votre OS.</p>
<p style="text-align: justify;">Quant au fichier <em>AssemblyInfos.cs</em>, il contient des informations relatives à votre programme.</p>
<p style="text-align: justify;"> </p>
<hr />
<p style="text-align: justify;">Voici le<em> code source</em> de votre OS, j'ai traduit le texte pour plus de compréhension (vous pouvez copier coller celui-là)&nbsp;:</p>
<pre class="lang:c# decode:true">using System;
using System.Collections.Generic;
using System.Text;
using Sys&nbsp;=&nbsp;Cosmos.System;
// Ceci permet d'importer des références.
namespace Custom_Protocol
{
    public class Kernel&nbsp;: Sys.Kernel
    {
        protected override void BeforeRun() 
        //Ceci est le code exécuté avant l'exécution du programme
        {
            Console.Clear();
            //Permet de nettoyer la console des logs de démarrage
            Console.WriteLine("Tutoriel de customprotocol.com");
            Console.WriteLine("Cosmos a démarré avec succès. Tapez une ligne de texte pour la faire revenir."); 
            //Ceci permet d'écrire une ligne
        }
        protected override void Run() 
        //Ceci est le code exécuté pendant l'exécution du programme, il se répétera indéfiniment.
        {
            Console.Write("Votre texte: "); 
            //Ceci permet d'écrire une ligne ou l'on peut écrire sur la même ligne.
            var texteutilisateur&nbsp;=&nbsp;Console.ReadLine(); 
            //Ceci est une variable qui permet de lire le texte écrit par l'utilisateur
            Console.Write("Texte ecrit: ");
            //Ceci écrit une ligne
            Console.WriteLine(texteutilisateur); 
            //Ceci écrit le texte que l'utilisateur a écrit.
        }
    }
}
</pre>
<figure id="attachment_12261" aria-describedby="caption-attachment-12261" style="width: 279px" class="wp-caption alignright"><img decoding="async" class="wp-image-12261 size-full" src="https://www.customprotocol.com/medias/2017/01/demarrer.png" alt="demarrer" width="279" height="32" srcset="https://www.customprotocol.com/medias/2017/01/demarrer.png 279w, https://www.customprotocol.com/medias/2017/01/demarrer-270x31.png 270w" sizes="(max-width: 279px) 100vw, 279px" /><figcaption id="caption-attachment-12261" class="wp-caption-text">Lets' go&#8239;!</figcaption></figure>
<h5 style="text-align: justify;"><span style="text-decoration: underline;"><strong>C. Votre premier boot&#8239;!</strong></span></h5>
<p style="text-align: justify;">Vous pouvez maintenant appuyer sur le petit bouton vert "Démarrer", il se situe sur la barre du haut de <em>Visual Studio</em>.</p>
<p style="text-align: justify;">Si votre code n'a pas d'erreurs, et si <em>VMWare</em> est bien installé, la génération va commencer. Voici une <a href="https://www.youtube.com/watch?v=zfY5ZYq6haw">petite vidéo</a> d'exemple de génération. </p>
<p style="text-align: justify;">Après que <em>VMWare</em> se soit lancé, vous devriez normalement voir du texte défiler (il correspond à <em>l'initialisation</em> de l'<em>ISO</em> dans <em>VMWare</em>). Et après tout ceci, si vous avez correctement copié-collé le code plus haut, vous devriez obtenir ceci&nbsp;:</p>
<figure id="attachment_12270" aria-describedby="caption-attachment-12270" style="width: 500px" class="wp-caption aligncenter"><a href="https://www.customprotocol.com/medias/2017/01/ctpos.png"><img decoding="async" class="wp-image-12270 size-medium" src="https://www.customprotocol.com/medias/2017/01/ctpos-500x323.png" alt="Voici le CTPOS&#8239;! XD" width="500" height="323" /></a><figcaption id="caption-attachment-12270" class="wp-caption-text">Voici le <em>CustomProtcolOS</em>&#8239;! XD</figcaption></figure>
<p style="text-align: justify;">Voilà, vous venez de créer la première version de votre premier <em>OS </em>en<em> 32 bit</em>s, bravo&#8239;! Vous pouvez évidemment continuer à le développer, avec l'aide de plusieurs tutoriels qui vont arriver très bientôt ou de la <a href="https://github.com/CosmosOS/Cosmos/wiki">documentation officielle</a> du projet <strong>Cosmos</strong>.</p>
<p>L’article <a rel="nofollow" href="https://www.customprotocol.com/programmation/windows-creer-son-systeme-exploitation-os-avec-cosmos/">[Windows] TUTO &#8211; [Partie 1] [MàJ le 18/05/2017] Créer son système d&#8217;exploitation avec Cosmos</a> est apparu en premier sur <a rel="nofollow" href="https://www.customprotocol.com">Custom Protocol</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.customprotocol.com/programmation/windows-creer-son-systeme-exploitation-os-avec-cosmos/feed/</wfw:commentRss>
			<slash:comments>2</slash:comments>
		
		
			</item>
		<item>
		<title>[Vita] Le Lua Player Plus reçoit sa cinquième mise à jour</title>
		<link>https://www.customprotocol.com/programmation/vita-lua-player-plus-recoit-cinquieme-mise-a-jour/</link>
					<comments>https://www.customprotocol.com/programmation/vita-lua-player-plus-recoit-cinquieme-mise-a-jour/#comments</comments>
		
		<dc:creator><![CDATA[valentinbreiz]]></dc:creator>
		<pubDate>Fri, 06 Jan 2017 11:00:11 +0000</pubDate>
				<category><![CDATA[News]]></category>
		<category><![CDATA[News Programmation]]></category>
		<category><![CDATA[Programmation]]></category>
		<category><![CDATA[Lua]]></category>
		<category><![CDATA[Lua Player Plus Vita]]></category>
		<guid isPermaLink="false">https://www.customprotocol.com/?post_type=it_programmation&#038;p=12227</guid>
					<description><![CDATA[<p>La version 0.5 du Lua Player Plus pour PS Vita est sortie&#8239;! Voici les nouvelles fonctionnalités, modifications et corrections.</p>
<p>L’article <a rel="nofollow" href="https://www.customprotocol.com/programmation/vita-lua-player-plus-recoit-cinquieme-mise-a-jour/">[Vita] Le Lua Player Plus reçoit sa cinquième mise à jour</a> est apparu en premier sur <a rel="nofollow" href="https://www.customprotocol.com">Custom Protocol</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p style="text-align: justify;">Le 28 août 2016 (<em>a long time ago</em>), <em>Rinnegatamante </em>sortait la version 0.5 de son<strong> Lua Player Plus</strong> pour PS Vita et y rajoutait beaucoup de fonctionnalités. Pour rappel, un <em>Lua Player</em> est un interpréteur qui permet de transcrire du code en instructions (afficher du texte, afficher une image…) et tout ça avec le langage de programmation <em>Lua</em>. Le <strong>Lua Player Plus</strong> sur PS Vita permet de créer des applications .<em>VPK</em> installables grâce au<em> <a href="https://www.customprotocol.com/underground/vita-tuto-installer-henkaku/" target="_blank" rel="noopener noreferrer">HENkaku</a>.</em></p>
<figure id="attachment_11236" aria-describedby="caption-attachment-11236" style="width: 764px" class="wp-caption aligncenter"><a href="https://www.customprotocol.com/medias/2016/08/2016-08-23-141746.jpg"><img decoding="async" class="size-large wp-image-11236" src="https://www.customprotocol.com/medias/2016/08/2016-08-23-141746-764x433.jpg" alt="Lua Player Plus Vita" width="764" height="433" /></a><figcaption id="caption-attachment-11236" class="wp-caption-text">Magnifique logo, n'est-ce pa s?</figcaption></figure>
<hr />
<p>Ne nous attardons pas et passons directement au nouveautés venant du<em> changelog</em> officiel&#8239;!</p>
<h4><span style="text-decoration: underline;"><strong>Nouvelles fonctions</strong></span>&nbsp;:</h4>
<ul>
<li><em>Controls.rumble()</em> - Change l'état de certain dualshock (PSTV uniquement)&#8239;;</li>
<li><em>Screen.getPixel()</em> - Permet d'obtenir la couleur d'un pixel sur l'écran&#8239;;</li>
<li><em>Screen.waitVblankStart()</em> - Permet d'effectuer une synchronisation verticale de l'écran (<em>vSync</em>)&#8239;;</li>
<li><em>System.getTime()</em> - Permet d'obtenir l'heure du système&#8239;;</li>
<li><em>System.getDate()</em> - La date aussi&#8239;!&#8239;;</li>
<li><em>System.getLanguage()</em> - Ainsi que le langage de la PS Vita&#8239;;</li>
<li><em>System.getUsername()</em> - Et même le pseudo PSN&#8239;!&#8239;;</li>
<li><em>System.extractZIP()</em> - Permet d'extraire un fichier ZIP&#8239;;</li>
<li><em>System.extractFromZIP()</em> - Permet d'extraire un fichier d'un ZIP&#8239;;</li>
<li><em>Socket.init()</em> - Initialiser une connexion "socket"&#8239;;</li>
<li><em>Socket.term()</em> - Terminer une connexion "socket"&#8239;;</li>
<li><em>Socket.createServerSocket()</em> - Créer un serveur "socket"&#8239;;</li>
<li><em>Socket.send()</em> - Envoie un message sur un serveur&#8239;;</li>
<li><em>Socket.receive()</em> - Reçoit un message depuis un serveur&#8239;;</li>
<li><em>Socket.accept()</em> - Accepter une connexion depuis un serveur&#8239;;</li>
<li><em>Socket.close()</em> - Ferme un réseau&#8239;;</li>
<li><em>Socket.connect()</em> - Connecter a un serveur, utilisant un "socket"&#8239;;</li>
<li><em>Keyboard.show()</em> - Permet d'afficher le clavier officiel <em>Sony</em>&#8239;;</li>
<li><em>Keyboard.getState()</em> - Permet de récupérer l'état du clavier&#8239;;</li>
<li><em>Keyboard.getInput()</em> - Prend le contenu du clavier&#8239;;</li>
<li><em>Keyboard.clear()</em> - Enlève le clavier officiel de <em>Sony</em>.</li>
</ul>
<p>Cela fait beaucoup de nouveautés tiens donc, mais <em>Rinnegatamante </em>ne s'arrête pas là&#8239;!</p>
<h4><span style="text-decoration: underline;"><strong>Nouvelles fonctionnalités</strong></span>&nbsp;:</h4>
<ul>
<li>Maintenant<em> lpp-vita</em> permet d'utiliser des eboots "safe" pour vos <em>homebrews</em>, utile notamment pour l'installation depuis <em>VitaShell</em>&#8239;;</li>
<li>Augmentation la <em>RAM</em> disponible à 192 MB&#8239;;</li>
<li>Maintenant plusieurs instances du même son peuvent être mises en reproduction sans aucun problème&#8239;;</li>
<li>Maintenant <em>VSync</em> est désactivé par défaut mais peut être activé avec <em>Screen.waitVblankStart()</em>.</li>
</ul>
<h4><span style="text-decoration: underline;"><strong>Changements</strong> et correction de bugs et ajout de 3 samples</span>&nbsp;:</h4>
<h5><span style="text-decoration: underline;"><strong>Changements</strong></span>&nbsp;:</h5>
<ul>
<li>Maintenant, toutes les fonctions de dessin d'images graphiques acceptent un argument optionnel supplémentaire pour effectuer une teinte de texture&#8239;;</li>
<li>Modification de l'ordre des arguments graphiques dessinant des images respectant le <strong>Lua Player Plus</strong> sur 3DS&#8239;;</li>
<li>Maintenant <em>Controls.read()</em>,<em> Controls.readLeftAnalog()</em> et<em> Controls.readRightAnalog()</em> acceptent un argument supplémentaire qui indique quelle manette utiliser (PSTV seulement).</li>
</ul>
<h5><span style="text-decoration: underline;"><strong>Corrections de bugs</strong></span>&nbsp;:</h5>
<ul>
<li>Maintenant <em>Sound.pause()</em> et <em>Sound.resume()</em> fonctionnent correctement&#8239;;</li>
<li>Maintenant <em>Sound.play() </em>ne provoquera pas de désynchronisation avec les pistes PCM WAV&#8239;;</li>
<li>Correction de <em>LOOP</em> et <em>NO_LOOP</em>. Maintenant, ils fonctionnent comme prévu&#8239;;</li>
<li>Correction d'une faille dans l'implémentation<em> io.read ()</em>.</li>
</ul>
<h5><span style="text-decoration: underline;"><strong>Projets test ajoutés</strong></span>&nbsp;:</h5>
<ul>
<li>Syntaxe des fichiers audio corrigée&#8239;;</li>
<li><em>Sample</em> "clavier" ajouté&#8239;;</li>
</ul>
<figure id="attachment_12220" aria-describedby="caption-attachment-12220" style="width: 500px" class="wp-caption aligncenter"><img decoding="async" class="wp-image-12220 size-medium" src="https://www.customprotocol.com/medias/2017/01/clavier-500x283.jpg" alt="Clavier" width="500" height="283" /><figcaption id="caption-attachment-12220" class="wp-caption-text">Wow le beau clavier&nbsp;:3</figcaption></figure>
<ul>
<li>Sample "téléchargeur de fichier" ajouté.</li>
</ul>
<p>Merci encore à <em>Rinnegatamante</em>, et si vous voulez télécharger la version 0.5 du <strong>Lua Player Plus </strong>pour PS Vita, c'est juste en-dessous&nbsp;:</p>
<figure id="attachment_11300" aria-describedby="caption-attachment-11300" style="width: 500px" class="wp-caption aligncenter"><a href="https://github.com/Rinnegatamante/lpp-vita/releases/download/r5/lpp-vita_R5.rar"><img decoding="async" class="wp-image-11300 size-medium" src="https://www.customprotocol.com/medias/2016/08/bouton-telecharger-v22-500x152.png" alt="Lua Player Plus Vita R5" width="500" height="152" /></a><figcaption id="caption-attachment-11300" class="wp-caption-text"><b>Lua Player Plus Vita</b> R5, par <em>Rinnegatamante</em><br /> <a href="https://mega.nz/#!mI1DgQpB!WoFHoug8l5zq9A8tCijlqxO0cMZ-b0K-qWn09hf81RY" target="_blank" rel="noopener noreferrer"><em>Lien miroir</em></a></figcaption></figure>
<p>L’article <a rel="nofollow" href="https://www.customprotocol.com/programmation/vita-lua-player-plus-recoit-cinquieme-mise-a-jour/">[Vita] Le Lua Player Plus reçoit sa cinquième mise à jour</a> est apparu en premier sur <a rel="nofollow" href="https://www.customprotocol.com">Custom Protocol</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.customprotocol.com/programmation/vita-lua-player-plus-recoit-cinquieme-mise-a-jour/feed/</wfw:commentRss>
			<slash:comments>13</slash:comments>
		
		
			</item>
		<item>
		<title>[GekiHEN] [Vita] Le ONELua maintenant compatible avec la PS Vita</title>
		<link>https://www.customprotocol.com/programmation/vita-gekihen-onelua-compatible/</link>
					<comments>https://www.customprotocol.com/programmation/vita-gekihen-onelua-compatible/#respond</comments>
		
		<dc:creator><![CDATA[Applelo]]></dc:creator>
		<pubDate>Sun, 25 Sep 2016 10:40:17 +0000</pubDate>
				<category><![CDATA[News]]></category>
		<category><![CDATA[News Programmation]]></category>
		<category><![CDATA[News Underground]]></category>
		<category><![CDATA[Programmation]]></category>
		<category><![CDATA[Underground]]></category>
		<category><![CDATA[GekiHEN]]></category>
		<category><![CDATA[Lua Player]]></category>
		<category><![CDATA[OneLua]]></category>
		<guid isPermaLink="false">https://www.customprotocol.com/?post_type=it_programmation&#038;p=11614</guid>
					<description><![CDATA[<p>Si vous avez envie de créer des jeux compatibles PSP et PS Vita, c'est possible facilement avec le ONELua&#8239;!</p>
<p>L’article <a rel="nofollow" href="https://www.customprotocol.com/programmation/vita-gekihen-onelua-compatible/">[GekiHEN] [Vita] Le ONELua maintenant compatible avec la PS Vita</a> est apparu en premier sur <a rel="nofollow" href="https://www.customprotocol.com">Custom Protocol</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p style="text-align: justify;">Le <strong>ONELua</strong> est le Lua Player pour PSP qui propose le plus de fonctionnalités. En effet, avec les callbacks, les fonctions 3D, les fonctions d'affichage de maps grâce à un fichier txt... Celui-ci est arrivé à la fin de l'apogée de la console, ce qui est bien dommage.</p>
<figure id="attachment_10732" aria-describedby="caption-attachment-10732" style="width: 480px" class="wp-caption aligncenter"><img decoding="async" class="wp-image-10732 size-full" src="https://www.customprotocol.com/medias/2016/07/oneluav4.png" alt="oneluav4" width="480" height="272" srcset="https://www.customprotocol.com/medias/2016/07/oneluav4.png 480w, https://www.customprotocol.com/medias/2016/07/oneluav4-300x170.png 300w, https://www.customprotocol.com/medias/2016/07/oneluav4-370x210.png 370w, https://www.customprotocol.com/medias/2016/07/oneluav4-270x153.png 270w" sizes="(max-width: 480px) 100vw, 480px" /><figcaption id="caption-attachment-10732" class="wp-caption-text">Le <strong>ONELua</strong> maintenant compatible avec la PSVita&#8239;!</figcaption></figure>
<hr />
<p style="text-align: justify;">Aujourd'hui, les développeurs <em>gdljjrod</em>, <em>Davis</em> et <em>Rober Galarga</em> reviennent avec une nouvelle version dédié à la PS Vita. On retrouve ainsi énormément de fonctions qu'ont en commun les deux consoles. Il est de ce fait très facile de porter son jeu d'une console à l'autre&#8239;!</p>
<a class="gridlove-popup" href='https://www.customprotocol.com/medias/2016/09/onelua-vita-menu.jpg'><img decoding="async" width="740" height="419" src="https://www.customprotocol.com/medias/2016/09/onelua-vita-menu-740x419.jpg" class="attachment-gridlove-single size-gridlove-single" alt="" srcset="https://www.customprotocol.com/medias/2016/09/onelua-vita-menu-740x419.jpg 740w, https://www.customprotocol.com/medias/2016/09/onelua-vita-menu-300x170.jpg 300w, https://www.customprotocol.com/medias/2016/09/onelua-vita-menu-768x435.jpg 768w, https://www.customprotocol.com/medias/2016/09/onelua-vita-menu-370x210.jpg 370w, https://www.customprotocol.com/medias/2016/09/onelua-vita-menu-270x153.jpg 270w, https://www.customprotocol.com/medias/2016/09/onelua-vita-menu-570x323.jpg 570w, https://www.customprotocol.com/medias/2016/09/onelua-vita-menu.jpg 960w, https://www.customprotocol.com/medias/2016/09/onelua-vita-menu-300x170@2x.jpg 600w" sizes="(max-width: 740px) 100vw, 740px" /></a>
<a class="gridlove-popup" href='https://www.customprotocol.com/medias/2016/09/onelua-vita-draw.jpg'><img decoding="async" width="740" height="419" src="https://www.customprotocol.com/medias/2016/09/onelua-vita-draw-740x419.jpg" class="attachment-gridlove-single size-gridlove-single" alt="" srcset="https://www.customprotocol.com/medias/2016/09/onelua-vita-draw-740x419.jpg 740w, https://www.customprotocol.com/medias/2016/09/onelua-vita-draw-300x170.jpg 300w, https://www.customprotocol.com/medias/2016/09/onelua-vita-draw-768x435.jpg 768w, https://www.customprotocol.com/medias/2016/09/onelua-vita-draw-370x210.jpg 370w, https://www.customprotocol.com/medias/2016/09/onelua-vita-draw-270x153.jpg 270w, https://www.customprotocol.com/medias/2016/09/onelua-vita-draw-570x323.jpg 570w, https://www.customprotocol.com/medias/2016/09/onelua-vita-draw.jpg 960w, https://www.customprotocol.com/medias/2016/09/onelua-vita-draw-300x170@2x.jpg 600w" sizes="(max-width: 740px) 100vw, 740px" /></a>
<p style="text-align: justify;">On retrouve également des fonctions dédiés à l'installation des fameux ".VPK" et l'utilisation des polices au format ".TTF" en plus des ".PGF". Néanmoins, il faudra oublier les fonctions dédiées au son et à la 3D avec cette première version.</p>
<a class="gridlove-popup" href='https://www.customprotocol.com/medias/2016/09/onelua-vita-download.jpg'><img decoding="async" width="740" height="419" src="https://www.customprotocol.com/medias/2016/09/onelua-vita-download-740x419.jpg" class="attachment-gridlove-single size-gridlove-single" alt="" srcset="https://www.customprotocol.com/medias/2016/09/onelua-vita-download-740x419.jpg 740w, https://www.customprotocol.com/medias/2016/09/onelua-vita-download-300x170.jpg 300w, https://www.customprotocol.com/medias/2016/09/onelua-vita-download-768x435.jpg 768w, https://www.customprotocol.com/medias/2016/09/onelua-vita-download-370x210.jpg 370w, https://www.customprotocol.com/medias/2016/09/onelua-vita-download-270x153.jpg 270w, https://www.customprotocol.com/medias/2016/09/onelua-vita-download-570x323.jpg 570w, https://www.customprotocol.com/medias/2016/09/onelua-vita-download.jpg 960w, https://www.customprotocol.com/medias/2016/09/onelua-vita-download-300x170@2x.jpg 600w" sizes="(max-width: 740px) 100vw, 740px" /></a>
<a class="gridlove-popup" href='https://www.customprotocol.com/medias/2016/09/onelua-vita-controls.jpg'><img decoding="async" width="740" height="419" src="https://www.customprotocol.com/medias/2016/09/onelua-vita-controls-740x419.jpg" class="attachment-gridlove-single size-gridlove-single" alt="" srcset="https://www.customprotocol.com/medias/2016/09/onelua-vita-controls-740x419.jpg 740w, https://www.customprotocol.com/medias/2016/09/onelua-vita-controls-300x170.jpg 300w, https://www.customprotocol.com/medias/2016/09/onelua-vita-controls-768x435.jpg 768w, https://www.customprotocol.com/medias/2016/09/onelua-vita-controls-370x210.jpg 370w, https://www.customprotocol.com/medias/2016/09/onelua-vita-controls-270x153.jpg 270w, https://www.customprotocol.com/medias/2016/09/onelua-vita-controls-570x323.jpg 570w, https://www.customprotocol.com/medias/2016/09/onelua-vita-controls.jpg 960w, https://www.customprotocol.com/medias/2016/09/onelua-vita-controls-300x170@2x.jpg 600w" sizes="(max-width: 740px) 100vw, 740px" /></a>
<p style="text-align: justify;">Les développeurs proposent également un outil nommé <strong>ONEMaker</strong>. Il permet de personnaliser son <em>homebrew</em> en changeant les métadonnées (nom et id de votre <em>homebrew</em>). Cependant, l'utilitaire est compatible uniquement avec <em>Windows</em>.</p>
<p style="text-align: justify;">Vous trouverez d'ailleurs une documentation en <a href="http://onelua.x10.mx/vita/docs/en/">anglais</a> et en <a href="http://onelua.x10.mx/vita/docs/es/">espagnol</a> sur les fonctions disponibles. De plus, l'archive du <strong>ONELua R1</strong> dispose de tout un tas d'exemples.</p>
<p style="text-align: justify;"><div class="one_half">
<figure id="attachment_11300" aria-describedby="caption-attachment-11300" style="width: 500px" class="wp-caption aligncenter"><a href="http://onelua.x10.mx/vita/ONEluaVita1R0.vpk"><img decoding="async" class="wp-image-11300 size-medium" src="https://www.customprotocol.com/medias/2016/08/bouton-telecharger-v22-500x152.png" alt="bouton-telecharger-v2,2" width="500" height="152" /></a><figcaption id="caption-attachment-11300" class="wp-caption-text"><strong>ONELua R1</strong> pour PS Vita</figcaption></figure>
</div><div class="one_half last">
<figure id="attachment_11300" aria-describedby="caption-attachment-11300" style="width: 500px" class="wp-caption aligncenter"><a href="http://onelua.x10.mx/vita/ONEmaker.rar"><img decoding="async" class="wp-image-11300 size-medium" src="https://www.customprotocol.com/medias/2016/08/bouton-telecharger-v22-500x152.png" alt="bouton-telecharger-v2,2" width="500" height="152" /></a><figcaption id="caption-attachment-11300" class="wp-caption-text"><strong>ONEMaker</strong> pour <em>Windows</em></figcaption></figure>
<p style="text-align: justify;"></div><div class="clearboth"></div>
<p style="text-align: justify;">Avec cette version, les développeurs hispaniques proposent un <em>Lua Player</em> pour la compétition <strong>GekiHEN</strong> qui risque de faire parler de lui. En effet, beaucoup de <em>homebrews</em> risquent de l'utiliser, grâce aux diverses fonctions, mais également pour sa rétrocompatibilité avec son homologue PSP.</p>
<hr />
<p>Si vous avez envie d'apprendre le Lua pour PSP et PS Vita, laissez un commentaire et je ferais peut être une série de tutoriels&#8239;!&nbsp;<img src="https://s.w.org/images/core/emoji/17.0.2/72x72/1f61b.png" alt="😛" class="wp-smiley" style="height: 1em; max-height: 1em;" /></p>
<p>En attendant, bon développement&#8239;! ^^</p>
<p>L’article <a rel="nofollow" href="https://www.customprotocol.com/programmation/vita-gekihen-onelua-compatible/">[GekiHEN] [Vita] Le ONELua maintenant compatible avec la PS Vita</a> est apparu en premier sur <a rel="nofollow" href="https://www.customprotocol.com">Custom Protocol</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.customprotocol.com/programmation/vita-gekihen-onelua-compatible/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>[PSV] [PSTV] [PC] TUTO&#160;-&#160;Installer et utiliser le VitaSDK</title>
		<link>https://www.customprotocol.com/programmation/psv-pstv-pc-tuto-installer-utiliser-vitasdk/</link>
					<comments>https://www.customprotocol.com/programmation/psv-pstv-pc-tuto-installer-utiliser-vitasdk/#comments</comments>
		
		<dc:creator><![CDATA[Applelo]]></dc:creator>
		<pubDate>Wed, 21 Sep 2016 10:40:13 +0000</pubDate>
				<category><![CDATA[Programmation]]></category>
		<category><![CDATA[Tutoriels]]></category>
		<category><![CDATA[Tutoriels Programmation]]></category>
		<category><![CDATA[Tutoriels Underground]]></category>
		<category><![CDATA[Underground]]></category>
		<category><![CDATA[compiler]]></category>
		<category><![CDATA[VitaSDK]]></category>
		<guid isPermaLink="false">https://www.customprotocol.com/?post_type=it_programmation&#038;p=11595</guid>
					<description><![CDATA[<p>Après avoir lu ce tutoriel, vous pourrez compiler facilement toutes vos belles créations (et VitaRW)&#8239;!&#160;:D</p>
<p>L’article <a rel="nofollow" href="https://www.customprotocol.com/programmation/psv-pstv-pc-tuto-installer-utiliser-vitasdk/">[PSV] [PSTV] [PC] TUTO&nbsp;-&nbsp;Installer et utiliser le VitaSDK</a> est apparu en premier sur <a rel="nofollow" href="https://www.customprotocol.com">Custom Protocol</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p style="text-align: justify;">Vous avez envie de compiler votre propre application ou simplement un programme déjà existant pour votre PS Vita&#8239;? Alors vous êtes au bon endroit pour apprendre à le faire&#8239;!&nbsp;<img src="https://s.w.org/images/core/emoji/17.0.2/72x72/1f642.png" alt="🙂" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Le <strong>VitaSDK</strong> est le "successeur" du <em><a href="https://www.customprotocol.com/programmation/psv-pstv-pc-installer-utiliser-compiler-psp2sdk/">PSP2SDK</a></em>, apportant beaucoup plus de stabilité par rapport à son prédécesseur. Mais son principal avantage est sans conteste sa compatibilité avec <strong>HENKaku</strong>. Il est également régulièrement mis à jour, entre autres, par les membres de la <em>Team Molecule</em>. Ainsi, il dispose de toute les dernières nouveautés incorporés par l'équipe de <em>hackers</em>.</p>
<figure id="attachment_5052" aria-describedby="caption-attachment-5052" style="width: 764px" class="wp-caption aligncenter"><a href="https://www.customprotocol.com/medias/2015/06/PSP2SDK-programmes-publies-173210-telecharger-release.png"><img decoding="async" class="wp-image-5052 size-large" src="https://www.customprotocol.com/medias/2015/06/PSP2SDK-programmes-publies-173210-telecharger-release-1024x488.png" alt="Le PSP2SDK est un kit de développement crée par 173210 et sa bande" width="764" height="364" srcset="https://www.customprotocol.com/medias/2015/06/PSP2SDK-programmes-publies-173210-telecharger-release-1024x488.png 1024w, https://www.customprotocol.com/medias/2015/06/PSP2SDK-programmes-publies-173210-telecharger-release-300x143.png 300w, https://www.customprotocol.com/medias/2015/06/PSP2SDK-programmes-publies-173210-telecharger-release-768x366.png 768w, https://www.customprotocol.com/medias/2015/06/PSP2SDK-programmes-publies-173210-telecharger-release-370x176.png 370w, https://www.customprotocol.com/medias/2015/06/PSP2SDK-programmes-publies-173210-telecharger-release-270x129.png 270w, https://www.customprotocol.com/medias/2015/06/PSP2SDK-programmes-publies-173210-telecharger-release-570x272.png 570w, https://www.customprotocol.com/medias/2015/06/PSP2SDK-programmes-publies-173210-telecharger-release-740x353.png 740w, https://www.customprotocol.com/medias/2015/06/PSP2SDK-programmes-publies-173210-telecharger-release.png 1280w, https://www.customprotocol.com/medias/2015/06/PSP2SDK-programmes-publies-173210-telecharger-release-300x143@2x.png 600w" sizes="(max-width: 764px) 100vw, 764px" /></a><figcaption id="caption-attachment-5052" class="wp-caption-text">Développer des applications pour PS Vita, c'est cool&#8239;!</figcaption></figure>
<hr />
<h4><span style="text-decoration: underline;"><strong>0) Pré-requis</strong></span></h4>
<ul>
<li>Une PS Vita en 3.60 <a href="https://www.customprotocol.com/underground/vita-tuto-installer-henkaku/">avec <em>HENkaku</em> installé</a>&#8239;;</li>
<li>Un PC (<em>Windows</em> de préférence, c’est l’OS que nous utiliserons pour ce tutoriel)&#8239;;</li>
<li>Le gestionnaire d’archives <em><a href="http://www.spiroo.be/7zip/" target="_blank" rel="noopener noreferrer">7zip</a></em> ou <em>WinRar</em>&#8239;;</li>
<li>Le fichier d'installation de <a href="https://sourceforge.net/projects/devkitpro/"><em>devkitPro</em></a>&#8239;;</li>
<li>La dernière version du <a href="https://bintray.com/package/files/vitasdk/vitasdk/toolchain?order=desc&amp;sort=fileLastModified&amp;basePath=&amp;tab=files"><em>VitaSDK</em></a> selon votre OS&#8239;;</li>
<li>L'archive de <em><a href="https://github.com/xerpi/vitahelloworld/archive/master.zip">vitahelloworld</a></em>&#8239;;</li>
<li>Des compétences en C (pour programmer votre <em>homebrew</em>, c’est pas nécessaire pour simplement compiler).</li>
</ul>
<p style="text-align: justify;">Ce tutoriel sera mis à jour si des personnes souhaitent savoir comment l'installer sur Mac OS ou Linux.</p>
<h3 style="text-align: center;"><span style="text-decoration: underline;"><strong>Partie I&nbsp;-&nbsp;Installation des fichiers nécessaires</strong></span></h3>
<p style="text-align: justify;">Commencez par télécharger les fichiers nécessaires. Pour les fichiers du <strong>VitaSDK</strong>, prenez la version la plus récente correspondant à votre système d'exploitation.</p>
<figure id="attachment_11445" aria-describedby="caption-attachment-11445" style="width: 500px" class="wp-caption aligncenter"><a href="https://www.customprotocol.com/medias/2016/09/vitasdk-version-la-plus-recente.png"><img decoding="async" class="wp-image-11445 size-medium" src="https://www.customprotocol.com/medias/2016/09/vitasdk-version-la-plus-recente-500x126.png" alt="VitaSDK version la plus récente" width="500" height="126" /></a><figcaption id="caption-attachment-11445" class="wp-caption-text">À la date où ce tutoriel a été rédigé, c'est la derniè<i>re version disponible</i></figcaption></figure>
<p>N'oubliez pas de télécharger le fichier d'installation de <em>devkitPro</em>.</p>
<h4><strong><span style="text-decoration: underline;">1) Installation de devkitPro</span></strong></h4>
<p>Commencer par lancer <em>devkitProUpdater-1.6.0.exe</em> et suivez les étapes d'installations.</p>
<figure id="attachment_11450" aria-describedby="caption-attachment-11450" style="width: 499px" class="wp-caption aligncenter"><a href="https://www.customprotocol.com/medias/2016/09/devkitpro-1.png"><img decoding="async" class="wp-image-11450 size-full" src="https://www.customprotocol.com/medias/2016/09/devkitpro-1.png" alt="devkitPro 1" width="499" height="388" srcset="https://www.customprotocol.com/medias/2016/09/devkitpro-1.png 499w, https://www.customprotocol.com/medias/2016/09/devkitpro-1-300x233.png 300w, https://www.customprotocol.com/medias/2016/09/devkitpro-1-370x288.png 370w, https://www.customprotocol.com/medias/2016/09/devkitpro-1-385x300.png 385w, https://www.customprotocol.com/medias/2016/09/devkitpro-1-270x210.png 270w" sizes="(max-width: 499px) 100vw, 499px" /></a><figcaption id="caption-attachment-11450" class="wp-caption-text">C'est partie pour l'installation du <em>devkitPro</em>&#8239;!</figcaption></figure>
<p style="text-align: justify;">Laissez cochées toutes les cases à la première étape, mais pour la deuxième étape, cochez l'option pour supprimer les fichiers téléchargés.</p>
<a class="gridlove-popup" href='https://www.customprotocol.com/medias/2016/09/devkitpro-2.png'><img decoding="async" width="499" height="388" src="https://www.customprotocol.com/medias/2016/09/devkitpro-2.png" class="attachment-gridlove-single size-gridlove-single" alt="" srcset="https://www.customprotocol.com/medias/2016/09/devkitpro-2.png 499w, https://www.customprotocol.com/medias/2016/09/devkitpro-2-300x233.png 300w, https://www.customprotocol.com/medias/2016/09/devkitpro-2-370x288.png 370w, https://www.customprotocol.com/medias/2016/09/devkitpro-2-385x300.png 385w, https://www.customprotocol.com/medias/2016/09/devkitpro-2-270x210.png 270w" sizes="(max-width: 499px) 100vw, 499px" /></a>
<a class="gridlove-popup" href='https://www.customprotocol.com/medias/2016/09/devkitpro-3.png'><img decoding="async" width="499" height="388" src="https://www.customprotocol.com/medias/2016/09/devkitpro-3.png" class="attachment-gridlove-single size-gridlove-single" alt="" srcset="https://www.customprotocol.com/medias/2016/09/devkitpro-3.png 499w, https://www.customprotocol.com/medias/2016/09/devkitpro-3-300x233.png 300w, https://www.customprotocol.com/medias/2016/09/devkitpro-3-370x288.png 370w, https://www.customprotocol.com/medias/2016/09/devkitpro-3-385x300.png 385w, https://www.customprotocol.com/medias/2016/09/devkitpro-3-270x210.png 270w" sizes="(max-width: 499px) 100vw, 499px" /></a>
<p style="text-align: justify;">Il nous faudra seulement le <em>Minimal System</em> et le <em>devkitARM</em> pour faire fonctionner le <strong>VitaSDK</strong>.</p>
<figure id="attachment_11453" aria-describedby="caption-attachment-11453" style="width: 499px" class="wp-caption aligncenter"><a href="https://www.customprotocol.com/medias/2016/09/devkitpro-4.png"><img decoding="async" class="wp-image-11453 size-full" src="https://www.customprotocol.com/medias/2016/09/devkitpro-4.png" alt="devkitPro 4" width="499" height="388" srcset="https://www.customprotocol.com/medias/2016/09/devkitpro-4.png 499w, https://www.customprotocol.com/medias/2016/09/devkitpro-4-300x233.png 300w, https://www.customprotocol.com/medias/2016/09/devkitpro-4-370x288.png 370w, https://www.customprotocol.com/medias/2016/09/devkitpro-4-385x300.png 385w, https://www.customprotocol.com/medias/2016/09/devkitpro-4-270x210.png 270w" sizes="(max-width: 499px) 100vw, 499px" /></a><figcaption id="caption-attachment-11453" class="wp-caption-text">On prend le minimum syndical</figcaption></figure>
<p style="text-align: justify;">Laissez le chemin d'installation par défaut et cliquez sur "Install"<em>.</em></p>
<a class="gridlove-popup" href='https://www.customprotocol.com/medias/2016/09/cmd-make-vitahelloworld.png'><img decoding="async" width="740" height="395" src="https://www.customprotocol.com/medias/2016/09/cmd-make-vitahelloworld-740x395.png" class="attachment-gridlove-single size-gridlove-single" alt="" srcset="https://www.customprotocol.com/medias/2016/09/cmd-make-vitahelloworld-740x395.png 740w, https://www.customprotocol.com/medias/2016/09/cmd-make-vitahelloworld-300x160.png 300w, https://www.customprotocol.com/medias/2016/09/cmd-make-vitahelloworld-768x410.png 768w, https://www.customprotocol.com/medias/2016/09/cmd-make-vitahelloworld-370x198.png 370w, https://www.customprotocol.com/medias/2016/09/cmd-make-vitahelloworld-270x144.png 270w, https://www.customprotocol.com/medias/2016/09/cmd-make-vitahelloworld-570x304.png 570w, https://www.customprotocol.com/medias/2016/09/cmd-make-vitahelloworld.png 824w, https://www.customprotocol.com/medias/2016/09/cmd-make-vitahelloworld-300x160@2x.png 600w" sizes="(max-width: 740px) 100vw, 740px" /></a>
<a class="gridlove-popup" href='https://www.customprotocol.com/medias/2016/09/vitahelloworld-henkaku-compilation.png'><img decoding="async" width="740" height="387" src="https://www.customprotocol.com/medias/2016/09/vitahelloworld-henkaku-compilation-740x387.png" class="attachment-gridlove-single size-gridlove-single" alt="" srcset="https://www.customprotocol.com/medias/2016/09/vitahelloworld-henkaku-compilation-740x387.png 740w, https://www.customprotocol.com/medias/2016/09/vitahelloworld-henkaku-compilation-300x157.png 300w, https://www.customprotocol.com/medias/2016/09/vitahelloworld-henkaku-compilation-768x402.png 768w, https://www.customprotocol.com/medias/2016/09/vitahelloworld-henkaku-compilation-370x194.png 370w, https://www.customprotocol.com/medias/2016/09/vitahelloworld-henkaku-compilation-270x141.png 270w, https://www.customprotocol.com/medias/2016/09/vitahelloworld-henkaku-compilation-570x298.png 570w, https://www.customprotocol.com/medias/2016/09/vitahelloworld-henkaku-compilation.png 979w, https://www.customprotocol.com/medias/2016/09/vitahelloworld-henkaku-compilation-300x157@2x.png 600w" sizes="(max-width: 740px) 100vw, 740px" /></a>
<p style="text-align: justify;">Patientez pendant que le logiciel télécharge et installe les fichiers pour vous. Dès que l’installation est terminée, cliquez sur «&nbsp;Next&nbsp;» puis «&nbsp;Finish&nbsp;». Si l'installation s'est bien effectuée, vous devriez avoir à la racine de votre disque dur un dossier «&nbsp;devkitPro&nbsp;».</p>
<h4><strong><span style="text-decoration: underline;">2) Installation du VitaSDK</span></strong></h4>
<p style="text-align: justify;">Maintenant que cela est fait, décompressez l'archive du <strong>VitaSDK</strong>. À l'intérieur, vous devriez retrouver ces 4 dossiers (voir image ci-dessous).</p>
<figure id="attachment_11456" aria-describedby="caption-attachment-11456" style="width: 500px" class="wp-caption aligncenter"><a href="https://www.customprotocol.com/medias/2016/09/contenu-vitasdk.png"><img decoding="async" class="wp-image-11456 size-medium" src="https://www.customprotocol.com/medias/2016/09/contenu-vitasdk-500x340.png" alt="contenu vitasdk" width="500" height="340" /></a><figcaption id="caption-attachment-11456" class="wp-caption-text">Le contenu de l'archive du VitaSDK</figcaption></figure>
<p style="text-align: justify;">Déplacez les 4 dossiers dans "C:\devkitPro\devkitARM" et acceptez de «&nbsp;Remplacer les fichiers dans la destination&nbsp;».</p>
<p><a href="https://www.customprotocol.com/medias/2016/09/vitasdk-remplacement-fichier.png"><img decoding="async" class="aligncenter wp-image-11457 size-full" src="https://www.customprotocol.com/medias/2016/09/vitasdk-remplacement-fichier.png" alt="vitasdk remplacement fichier" width="449" height="306" srcset="https://www.customprotocol.com/medias/2016/09/vitasdk-remplacement-fichier.png 449w, https://www.customprotocol.com/medias/2016/09/vitasdk-remplacement-fichier-300x204.png 300w, https://www.customprotocol.com/medias/2016/09/vitasdk-remplacement-fichier-370x252.png 370w, https://www.customprotocol.com/medias/2016/09/vitasdk-remplacement-fichier-270x184.png 270w" sizes="(max-width: 449px) 100vw, 449px" /></a></p>
<p style="text-align: justify;">Maintenant que cela est fait, ne pensez pas que c'est déjà fini. Il nous reste un dernier petit quelque chose.</p>
<h4 style="text-align: justify;"><span style="text-decoration: underline;"><strong>3) Configuration du système</strong></span></h4>
<p style="text-align: justify;">Cliquez droit sur «&nbsp;Ordinateur&nbsp;» et sélectionnez l’option «&nbsp;Propriétés&nbsp;». Si vous ne le trouvez vraiment pas, allez dans «&nbsp;Panneau de configuration -&gt; Système et sécurité -&gt; Système&nbsp;».</p>
<div id="attachment_6112" class="wp-caption aligncenter"><figure id="attachment_6112" aria-describedby="caption-attachment-6112" style="width: 310px" class="wp-caption aligncenter"><a href="https://www.customprotocol.com/medias/2015/08/proprietes-ordinateur-windows.png"><img decoding="async" class="wp-image-6112 size-full" src="https://www.customprotocol.com/medias/2015/08/proprietes-ordinateur-windows.png" sizes="(max-width: 310px) 100vw, 310px" srcset="https://www.customprotocol.com/medias/2015/08/proprietes-ordinateur-windows.png 310w, https://www.customprotocol.com/medias/2015/08/proprietes-ordinateur-windows-186x135.png 186w, https://www.customprotocol.com/medias/2015/08/proprietes-ordinateur-windows-180x131.png 180w" alt="Vous devriez pouvoir accéder aux propriétés de votre ordinateur via les raccourcis à gauche de l'explorateur de fichiers Windows" width="310" height="225" /></a><figcaption id="caption-attachment-6112" class="wp-caption-text">Vous devriez pouvoir accéder aux propriétés de votre ordinateur via les raccourcis à gauche de l’explorateur de fichiers <em>Windows</em></figcaption></figure>
<p>Sur la nouvelle fenêtre qui s’ouvre, choisissez à gauche l’option «&nbsp;Paramètres système avancés&nbsp;».</p>
</div>
<div id="attachment_6113" class="wp-caption aligncenter"><figure id="attachment_6113" aria-describedby="caption-attachment-6113" style="width: 500px" class="wp-caption aligncenter"><a href="https://www.customprotocol.com/medias/2015/08/parametres-systeme-avances-windows.png"><img decoding="async" class="wp-image-6113 size-medium" src="https://www.customprotocol.com/medias/2015/08/parametres-systeme-avances-windows-500x356.png" sizes="(max-width: 500px) 100vw, 500px" srcset="https://www.customprotocol.com/medias/2015/08/parametres-systeme-avances-windows-500x356.png 500w, https://www.customprotocol.com/medias/2015/08/parametres-systeme-avances-windows-190x135.png 190w, https://www.customprotocol.com/medias/2015/08/parametres-systeme-avances-windows-764x543.png 764w, https://www.customprotocol.com/medias/2015/08/parametres-systeme-avances-windows-600x427.png 600w, https://www.customprotocol.com/medias/2015/08/parametres-systeme-avances-windows-180x128.png 180w, https://www.customprotocol.com/medias/2015/08/parametres-systeme-avances-windows-360x256.png 360w, https://www.customprotocol.com/medias/2015/08/parametres-systeme-avances-windows.png 786w" alt="Attention, on va paramétrer&#8239;!" width="500" height="356" /></a><figcaption id="caption-attachment-6113" class="wp-caption-text">Attention, on va paramétrer&#8239;!</figcaption></figure></div>
<p>Sur la nouvelle fenêtre (encore) qui s’ouvre, cliquez sur le bouton tout en bas «&nbsp;Variables d’environnement&nbsp;».</p>
<div id="attachment_6114" class="wp-caption aligncenter"><figure id="attachment_6114" aria-describedby="caption-attachment-6114" style="width: 416px" class="wp-caption aligncenter"><a href="https://www.customprotocol.com/medias/2015/08/variables-environnement-parametres-avances-windows.png"><img decoding="async" class="wp-image-6114 size-full" src="https://www.customprotocol.com/medias/2015/08/variables-environnement-parametres-avances-windows.png" sizes="(max-width: 416px) 100vw, 416px" srcset="https://www.customprotocol.com/medias/2015/08/variables-environnement-parametres-avances-windows.png 416w, https://www.customprotocol.com/medias/2015/08/variables-environnement-parametres-avances-windows-117x135.png 117w, https://www.customprotocol.com/medias/2015/08/variables-environnement-parametres-avances-windows-180x207.png 180w, https://www.customprotocol.com/medias/2015/08/variables-environnement-parametres-avances-windows-360x415.png 360w" alt="Vous voyez le bouton j'espère&#8239;?&nbsp;:p" width="416" height="479" /></a><figcaption id="caption-attachment-6114" class="wp-caption-text">Vous voyez le bouton j’espère&#8239;?&nbsp;:p</figcaption></figure></div>
<p style="text-align: justify;">Une troisième fenêtre (eh beh purée, qu’est-ce qu’il fait chier lui) va être ouverte. Sur celle-ci, 2 listes s’afficheront à vous&nbsp;: «&nbsp;Variables utilisateur pour X&nbsp;» et «&nbsp;Variables système&nbsp;». Dans cette liste-ci, trouvez la variable «&nbsp;Path&nbsp;» (et non «&nbsp;PATHTEXT&nbsp;»&#8239;! D’ailleurs c’est rigolo, quand on le prononce, ça sonne presque «&nbsp;pastèque&nbsp;». Lol, qu’est-ce qu’on s’marre ici).</p>
<div id="attachment_6116" class="wp-caption aligncenter"><figure id="attachment_6116" aria-describedby="caption-attachment-6116" style="width: 384px" class="wp-caption aligncenter"><a href="https://www.customprotocol.com/medias/2015/08/variables-system-path.png"><img decoding="async" class="wp-image-6116 size-full" src="https://www.customprotocol.com/medias/2015/08/variables-system-path.png" sizes="(max-width: 384px) 100vw, 384px" srcset="https://www.customprotocol.com/medias/2015/08/variables-system-path.png 384w, https://www.customprotocol.com/medias/2015/08/variables-system-path-123x135.png 123w, https://www.customprotocol.com/medias/2015/08/variables-system-path-180x198.png 180w, https://www.customprotocol.com/medias/2015/08/variables-system-path-360x397.png 360w" alt="Hop, il est juste là le coquin&#8239;!" width="384" height="423" /></a><figcaption id="caption-attachment-6116" class="wp-caption-text">Hop, il est juste là le coquin&#8239;!</figcaption></figure></div>
<p style="text-align: justify;">Cliquez une fois dessus pour le sélectionner (il sera mis en surbrillance/surligné). Cliquez ensuite sur le bouton «&nbsp;Modifier&nbsp;» juste en bas. Une quatrième fenêtre va être appelée (y en a encore 5 autres, accrochez-vous&#8239;! Non j’déconne, c’est la dernière, promis).</p>
<div id="attachment_6117" class="wp-caption aligncenter"><figure id="attachment_6117" aria-describedby="caption-attachment-6117" style="width: 387px" class="wp-caption aligncenter"><a href="https://www.customprotocol.com/medias/2015/08/modification-variable-systeme-path.png"><img decoding="async" class="wp-image-6117 size-full" src="https://www.customprotocol.com/medias/2015/08/modification-variable-systeme-path.png" sizes="(max-width: 387px) 100vw, 387px" srcset="https://www.customprotocol.com/medias/2015/08/modification-variable-systeme-path.png 387w, https://www.customprotocol.com/medias/2015/08/modification-variable-systeme-path-235x85.png 235w, https://www.customprotocol.com/medias/2015/08/modification-variable-systeme-path-180x65.png 180w, https://www.customprotocol.com/medias/2015/08/modification-variable-systeme-path-360x130.png 360w" alt="modification variable systeme path" width="387" height="140" /></a><figcaption id="caption-attachment-6117" class="wp-caption-text">Bon, no comment…</figcaption></figure></div>
<p>Copiez, après le dernier «&nbsp;bin;&nbsp;», ceci (n’oubliez pas le point-virgule à la fin&#8239;!)&nbsp;:</p>
<div class="crayon-plain-wrap">
<pre class="lang:default decode:true">C:\devkitPro\devkitARM\bin;C:\devkitPro\arm-vita-eabi\bin;
</pre>
</div>
<p style="text-align: justify;">N’oubliez surtout pas d’enregistrer en cliquant sur «&nbsp;OK&nbsp;», puis fermez toutes les fenêtres des propriétés <em>Windows</em> (ouf, enfin). Voilà, le <strong>VitaSDK</strong> est enfin installé&#8239;! Bon maintenant faut tester&#8239;!</p>
<h3 style="text-align: center;"><span style="text-decoration: underline;"><strong>Partie II&nbsp;-&nbsp;Utiliser le VitaSDK</strong></span></h3>
<h4><span style="text-decoration: underline;">1) Compilation d'un homebrew</span></h4>
<p style="text-align: justify;">Cette partie va vous surprendre par sa durée. Téléchargez le <em>vitahelloworld</em> (voir dans les Pré-requis) de <em>xerpi</em> et décompressez l'archive. Ouvrez le dossier <strong>vitahelloworld-master</strong> et cliquez sur "Fichier" puis "Ouvrir l'invite de commandes". Tapez simplement «&nbsp;make&nbsp;» et ça compilera tout seul&#8239;!</p>
<a class="gridlove-popup" href='https://www.customprotocol.com/medias/2016/09/cmd-make-vitahelloworld.png'><img decoding="async" width="740" height="395" src="https://www.customprotocol.com/medias/2016/09/cmd-make-vitahelloworld-740x395.png" class="attachment-gridlove-single size-gridlove-single" alt="" srcset="https://www.customprotocol.com/medias/2016/09/cmd-make-vitahelloworld-740x395.png 740w, https://www.customprotocol.com/medias/2016/09/cmd-make-vitahelloworld-300x160.png 300w, https://www.customprotocol.com/medias/2016/09/cmd-make-vitahelloworld-768x410.png 768w, https://www.customprotocol.com/medias/2016/09/cmd-make-vitahelloworld-370x198.png 370w, https://www.customprotocol.com/medias/2016/09/cmd-make-vitahelloworld-270x144.png 270w, https://www.customprotocol.com/medias/2016/09/cmd-make-vitahelloworld-570x304.png 570w, https://www.customprotocol.com/medias/2016/09/cmd-make-vitahelloworld.png 824w, https://www.customprotocol.com/medias/2016/09/cmd-make-vitahelloworld-300x160@2x.png 600w" sizes="(max-width: 740px) 100vw, 740px" /></a>
<a class="gridlove-popup" href='https://www.customprotocol.com/medias/2016/09/vitahelloworld-henkaku-compilation.png'><img decoding="async" width="740" height="387" src="https://www.customprotocol.com/medias/2016/09/vitahelloworld-henkaku-compilation-740x387.png" class="attachment-gridlove-single size-gridlove-single" alt="" srcset="https://www.customprotocol.com/medias/2016/09/vitahelloworld-henkaku-compilation-740x387.png 740w, https://www.customprotocol.com/medias/2016/09/vitahelloworld-henkaku-compilation-300x157.png 300w, https://www.customprotocol.com/medias/2016/09/vitahelloworld-henkaku-compilation-768x402.png 768w, https://www.customprotocol.com/medias/2016/09/vitahelloworld-henkaku-compilation-370x194.png 370w, https://www.customprotocol.com/medias/2016/09/vitahelloworld-henkaku-compilation-270x141.png 270w, https://www.customprotocol.com/medias/2016/09/vitahelloworld-henkaku-compilation-570x298.png 570w, https://www.customprotocol.com/medias/2016/09/vitahelloworld-henkaku-compilation.png 979w, https://www.customprotocol.com/medias/2016/09/vitahelloworld-henkaku-compilation-300x157@2x.png 600w" sizes="(max-width: 740px) 100vw, 740px" /></a>
<p style="text-align: justify;">Vous pouvez installer le ".VPK" créé et lancer le <em>homebrew</em> que vous avez compilé sur votre console&#8239;!&nbsp;<img src="https://s.w.org/images/core/emoji/17.0.2/72x72/1f642.png" alt="🙂" class="wp-smiley" style="height: 1em; max-height: 1em;" /></p>
<figure style="width: 500px" class="wp-caption aligncenter"><a href="https://www.customprotocol.com/medias/2015/08/vitahelloworld-master-xerpi-screenshot-500x283.png"><img decoding="async" src="https://www.customprotocol.com/medias/2015/08/vitahelloworld-master-xerpi-screenshot-500x283.png" width="500" height="283" /></a><figcaption class="wp-caption-text">Que c'est joli&#8239;!</figcaption></figure>
<p style="text-align: justify;">Vous pourriez vous arrêtez là mais si vous souhaitez créer vos propres applications, il vous faudra installer des librairies supplémentaires.</p>
<h4><strong><span style="text-decoration: underline;">2) Installation de bibliothèques supplémentaires</span></strong></h4>
<p style="text-align: justify;">Il est parfois intéressant d'ajouter de nouvelles bibliothèques pour avoir de nouvelles fonctions à utiliser. Pour cela, il faut télécharger la librairie en question et la compiler. Cependant, il faudra parfois suivre les instructions données avec la librairie pour réussir la compilation.</p>
<p style="text-align: justify;">Pour vous donner un exemple, nous allons compiler et installer la <em><a href="https://github.com/xerpi/libftpvita/archive/1.1.zip">libftpvita</a></em> de <em>xerpi</em>. Commencez par téléchargez et extraire les fichiers. Ouvrez le dossier "libftpvita", et cliquez droit tout en maintenant la touche <em>Shift</em> pour sélectionner "Ouvrir l'invite de commandes" (il se peut que cette option n'apparaisse pas, dans ce cas déplacez le dossier "libftpvita" sur votre Bureau). Comme pour compiler un <em>homebrew</em>, écrivez simplement «&nbsp;make&nbsp;». La librairie est compilée, maintenant, il faut l'installer&#8239;!</p>
<figure id="attachment_11553" aria-describedby="caption-attachment-11553" style="width: 207px" class="wp-caption aligncenter"><a href="https://www.customprotocol.com/medias/2016/09/libftpvita-compile.png"><img decoding="async" class="wp-image-11553 size-full" src="https://www.customprotocol.com/medias/2016/09/libftpvita-compile.png" alt="libftpvita-compile" width="207" height="125" /></a><figcaption id="caption-attachment-11553" class="wp-caption-text">La librairie est compilée avec l'apparition du fichier <em>libftpvita.a</em></figcaption></figure>
<p style="text-align: justify;">Dans le dossier "libftpvita", un fichier<em> libftpvita.a</em> a été créé. Déplacez-le dans le dossier "C:\devkitPro\arm-vita-eabi\lib". Retournez dans le dossier où la bibliothèque a été compilée et copiez le fichier "ftpvita.h" dans le dossier "C:\devkitPro\arm-vita-eabi\include". Voilà, la librairie est installée&#8239;!&nbsp;<img src="https://s.w.org/images/core/emoji/17.0.2/72x72/1f61b.png" alt="😛" class="wp-smiley" style="height: 1em; max-height: 1em;" /></p>
<p style="text-align: justify;">Si vous voulez faire des tests, sachez que les librairies sont souvent accompagnées d'exemples qu'il vous suffit de compiler.</p>
<figure id="attachment_5487" aria-describedby="caption-attachment-5487" style="width: 501px" class="wp-caption aligncenter"><a href="https://www.customprotocol.com/medias/2015/07/FTPVita-attente-de-connection.jpg"><img decoding="async" class="wp-image-5487" src="https://www.customprotocol.com/medias/2015/07/FTPVita-attente-de-connection.jpg" alt="FTPVita en attente de connection" width="501" height="284" srcset="https://www.customprotocol.com/medias/2015/07/FTPVita-attente-de-connection.jpg 960w, https://www.customprotocol.com/medias/2015/07/FTPVita-attente-de-connection-300x170.jpg 300w, https://www.customprotocol.com/medias/2015/07/FTPVita-attente-de-connection-768x435.jpg 768w, https://www.customprotocol.com/medias/2015/07/FTPVita-attente-de-connection-370x210.jpg 370w, https://www.customprotocol.com/medias/2015/07/FTPVita-attente-de-connection-270x153.jpg 270w, https://www.customprotocol.com/medias/2015/07/FTPVita-attente-de-connection-570x323.jpg 570w, https://www.customprotocol.com/medias/2015/07/FTPVita-attente-de-connection-740x419.jpg 740w, https://www.customprotocol.com/medias/2015/07/FTPVita-attente-de-connection-300x170@2x.jpg 600w" sizes="(max-width: 501px) 100vw, 501px" /></a><figcaption id="caption-attachment-5487" class="wp-caption-text">L'exemple fourni ici est l'homebrew <strong>FTPVita</strong>.</figcaption></figure>
<hr />
<p style="text-align: justify;">Si vous avez le moindre problème, n'hésitez pas à poser votre question dans la <a href="https://www.customprotocol.com/forum/programmation/" target="_blank" rel="noopener noreferrer">section programmation</a> de notre forum. Si vous voulez lâcher un commentaire de remerciement, c'est aussi possible à la suite de ce tutoriel&#8239;!&nbsp;<img src="https://s.w.org/images/core/emoji/17.0.2/72x72/1f600.png" alt="😀" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Merci pour votre lecture passionnée&#8239;!</p>
<p>L’article <a rel="nofollow" href="https://www.customprotocol.com/programmation/psv-pstv-pc-tuto-installer-utiliser-vitasdk/">[PSV] [PSTV] [PC] TUTO&nbsp;-&nbsp;Installer et utiliser le VitaSDK</a> est apparu en premier sur <a rel="nofollow" href="https://www.customprotocol.com">Custom Protocol</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.customprotocol.com/programmation/psv-pstv-pc-tuto-installer-utiliser-vitasdk/feed/</wfw:commentRss>
			<slash:comments>11</slash:comments>
		
		
			</item>
		<item>
		<title>[Vita] Le Lua Player Plus est de retour&#8239;!</title>
		<link>https://www.customprotocol.com/programmation/vita-lua-player-plus-de-retour/</link>
					<comments>https://www.customprotocol.com/programmation/vita-lua-player-plus-de-retour/#respond</comments>
		
		<dc:creator><![CDATA[Applelo]]></dc:creator>
		<pubDate>Wed, 03 Aug 2016 13:15:36 +0000</pubDate>
				<category><![CDATA[News]]></category>
		<category><![CDATA[News Programmation]]></category>
		<category><![CDATA[Programmation]]></category>
		<category><![CDATA[Lua Player Plus]]></category>
		<guid isPermaLink="false">https://www.customprotocol.com/?post_type=it_programmation&#038;p=10977</guid>
					<description><![CDATA[<p>Rinnegatamante revient avec une nouvelle mise à jour de son Lua Player mais pour la PS Vita.</p>
<p>L’article <a rel="nofollow" href="https://www.customprotocol.com/programmation/vita-lua-player-plus-de-retour/">[Vita] Le Lua Player Plus est de retour&#8239;!</a> est apparu en premier sur <a rel="nofollow" href="https://www.customprotocol.com">Custom Protocol</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p class="public "><em>Rinnegatamante</em> avait abandonné le développement de son<a href="https://www.customprotocol.com/underground/vita-pstv-lua-player-plus-beta/"> Lua Player sur PSVita</a>. En effet, on connait tous le succès de l'ancien hack <strong>Rejuvenate</strong> sur la dernière console portable de Sony. Pour rappel, un  <strong>Lua Player</strong> est un interpréteur qui permet de transcrire du code que vous écrivez en instructions (affiche-moi du texte, affiche-moi une image, etc.) en langage de programmation <strong>Lua</strong>.</p>
<blockquote class="twitter-tweet" data-lang="fr">
<p dir="ltr" lang="en" style="text-align: center;"><a href="https://twitter.com/Applelo1">@Applelo1</a> <a href="https://twitter.com/MisterAl3x">@MisterAl3x</a> There are a lot of things that need to be changed in lpp-vita but PSVITA scene is so dead that i lost interest on it.</p>
<p style="text-align: center;">— Rinnegatamante (@Rinnegatamante) <a href="https://twitter.com/Rinnegatamante/status/718825706772381696">9 avril 2016</a></p>
</blockquote>
<p><script src="//platform.twitter.com/widgets.js" async="" charset="utf-8"></script></p>
<p class="public ">Sur PSP, de nombreux homebrews étaient développés en Lua et le nombre de Lua Player disponible étaient conséquents. On retrouve <a href="https://www.customprotocol.com/forum/underground-psp/">une dizaine de Lua Player</a> tous différents les uns des autres par leurs fonctionnalités et les performances proposés. </p>
<figure id="attachment_10979" aria-describedby="caption-attachment-10979" style="width: 300px" class="wp-caption aligncenter"><img decoding="async" class="wp-image-10979 size-full" src="https://www.customprotocol.com/medias/2016/08/lua-player-plus-vita.jpg" alt="lua-player-plus-vita" width="300" height="200" srcset="https://www.customprotocol.com/medias/2016/08/lua-player-plus-vita.jpg 300w, https://www.customprotocol.com/medias/2016/08/lua-player-plus-vita-270x180.jpg 270w" sizes="(max-width: 300px) 100vw, 300px" /><figcaption id="caption-attachment-10979" class="wp-caption-text">Le logo adapté pour le Lua Player Plus PS Vita</figcaption></figure>
<p class="public ">Cependant, avec l'arrivé de <a href="https://www.customprotocol.com/underground/vita-henkaku-premier-hen-arrive/"><strong>HENKaku</strong></a>, le développeur italien a décidé de reprendre le développement du <strong>Lua Player Plus</strong> pour PSVita. Pour cette version 0.3, le développeur a changé le nom de plusieurs fonctions pour les faire coïncider avec son homologue 3DS. Ainsi de nombreuses fonctions ne sont plus dans la catégorie "Screen" mais dans "Graphics".</p>
<figure id="attachment_10985" aria-describedby="caption-attachment-10985" style="width: 500px" class="wp-caption aligncenter"><img decoding="async" class="wp-image-10985 size-medium" src="https://www.customprotocol.com/medias/2016/08/bulle-lua-player-plus-500x283.jpg" alt="Bulle Lua Player Plus" width="500" height="283" /><figcaption id="caption-attachment-10985" class="wp-caption-text">Entrez dans le monde formidable de la programmation&nbsp;:p</figcaption></figure>
<p class="public ">Deux fonctions, <em>System.loadElf()</em> et <em>Screen.getFramerate()</em> ont été retirés car elles ne sont plus utiles avec le nouveau hack HENKaku. Cependant deux autres ont été ajoutés, <em>System.setCpuSpeed()</em> et <em>System.getCpuSpeed()</em> qui permettent de choisir et d'obtenir la fréquence du processeur.</p>
<figure id="attachment_10984" aria-describedby="caption-attachment-10984" style="width: 500px" class="wp-caption aligncenter"><img decoding="async" class="wp-image-10984 size-medium" src="https://www.customprotocol.com/medias/2016/08/hello-world-vita-500x283.jpg" alt="Hello World Vita" width="500" height="283" /><figcaption id="caption-attachment-10984" class="wp-caption-text">Le célèbre message "Hello World" affiché grâce au <strong>Lua Player Plus</strong></figcaption></figure>
<p class="public ">Plusieurs améliorations ont été également effectuées comme le support du Multi-Touch pour le tactile avant et arrière ou la possibilité de générer son propre .VPK avec ses fichiers Lua à l'intérieur&#8239;!</p>
<figure id="attachment_10988" aria-describedby="caption-attachment-10988" style="width: 500px" class="wp-caption aligncenter"><img decoding="async" class="wp-image-10988 size-medium" src="https://www.customprotocol.com/medias/2016/08/builder-lua-player-plus-vita-500x263.png" alt="Builder Lua player Plus Vita" width="500" height="263" /><figcaption id="caption-attachment-10988" class="wp-caption-text">L'outil inclue permet de choisir le nom de son homebrew ainsi que l'ID de celui ci.</figcaption></figure>
<p class="public ">On regrette cependant le manque de nouvelles fonctions sachant que le <strong>VitaSDK</strong> et de nombreuses librairies proposent des fonctionnalités supplémentaires.</p>
<figure id="attachment_5235" aria-describedby="caption-attachment-5235" style="width: 300px" class="wp-caption aligncenter"><a href="https://github.com/Rinnegatamante/lpp-vita/releases/download/r3/lpp-vita_R3.rar"><img decoding="async" class="wp-image-5235 size-medium" src="https://www.customprotocol.com/medias/2015/06/bouton-telecharger-v2-300x91.png" alt="Bouton télécharger" width="300" height="91" srcset="https://www.customprotocol.com/medias/2015/06/bouton-telecharger-v2-300x91.png 300w, https://www.customprotocol.com/medias/2015/06/bouton-telecharger-v2-370x112.png 370w, https://www.customprotocol.com/medias/2015/06/bouton-telecharger-v2-270x82.png 270w, https://www.customprotocol.com/medias/2015/06/bouton-telecharger-v2.png 528w" sizes="(max-width: 300px) 100vw, 300px" /></a><figcaption id="caption-attachment-5235" class="wp-caption-text"><b>Lua Player Plus Vita</b> v0.3</figcaption></figure>
<p class="public ">Espérons que les prochaines versions apporteront leurs lots de nouveautés comme le support du son.</p>
<p>L’article <a rel="nofollow" href="https://www.customprotocol.com/programmation/vita-lua-player-plus-de-retour/">[Vita] Le Lua Player Plus est de retour&#8239;!</a> est apparu en premier sur <a rel="nofollow" href="https://www.customprotocol.com">Custom Protocol</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.customprotocol.com/programmation/vita-lua-player-plus-de-retour/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>[PSP] Le ONELua revient avec une mise à jour V4R1</title>
		<link>https://www.customprotocol.com/programmation/psple-onelua-revient-mise-a-jour-v4r1/</link>
					<comments>https://www.customprotocol.com/programmation/psple-onelua-revient-mise-a-jour-v4r1/#comments</comments>
		
		<dc:creator><![CDATA[Applelo]]></dc:creator>
		<pubDate>Thu, 14 Jul 2016 19:32:25 +0000</pubDate>
				<category><![CDATA[News]]></category>
		<category><![CDATA[News Programmation]]></category>
		<category><![CDATA[Programmation]]></category>
		<category><![CDATA[OneLua]]></category>
		<guid isPermaLink="false">https://www.customprotocol.com/?post_type=it_programmation&#038;p=10722</guid>
					<description><![CDATA[<p>Une quatrième version qui permet au Lua Player d'être indétronnable dans les fonctionnalités proposés&#8239;!</p>
<p>L’article <a rel="nofollow" href="https://www.customprotocol.com/programmation/psple-onelua-revient-mise-a-jour-v4r1/">[PSP] Le ONELua revient avec une mise à jour V4R1</a> est apparu en premier sur <a rel="nofollow" href="https://www.customprotocol.com">Custom Protocol</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p style="text-align: justify;">Pour les développeurs, deux possibilités sont privilégiées sur PSP&nbsp;: développer en C/C++ ou bien développer en <em>Lua</em> via un <strong>Lua Player</strong>. C'est cette deuxième qui nous intéresse aujourd'hui car c'est le célèbre <strong>ONELua</strong> qui vient d'être mis à jour dans une <strong>quatrième version (révision 1)</strong> apportant un lot de nouveautés encore conséquent.</p>
<figure id="attachment_10742" aria-describedby="caption-attachment-10742" style="width: 480px" class="wp-caption aligncenter"><img decoding="async" class="size-full wp-image-10742" src="https://www.customprotocol.com/medias/2016/07/oneluav4-1.png" alt="Le ONELua revient dans une quatrième monture." width="480" height="272" srcset="https://www.customprotocol.com/medias/2016/07/oneluav4-1.png 480w, https://www.customprotocol.com/medias/2016/07/oneluav4-1-300x170.png 300w, https://www.customprotocol.com/medias/2016/07/oneluav4-1-370x210.png 370w, https://www.customprotocol.com/medias/2016/07/oneluav4-1-270x153.png 270w" sizes="(max-width: 480px) 100vw, 480px" /><figcaption id="caption-attachment-10742" class="wp-caption-text">Le <strong>ONELua</strong> revient dans une quatrième monture</figcaption></figure>
<hr />
<p style="text-align: justify;">L'un des gros inconvénients était son incompatibilité avec l'émulateur de PSP pour PC et Android, <a href="https://www.customprotocol.com/jeux-indies/pc-android-ppsspp-version-1-2-2/" target="_blank" rel="noopener noreferrer"><em>PPSSPP</em></a>, notamment au niveau des polices d'écritures. Voilà qui est corrigé si vous nommez votre police "oneFont.pgf" à la racine de votre <em>homebrew</em>, celle-ci sera utilisée alors par l'émulateur. N'oubliez pas de désactiver le <em>Sofware Rendering</em> et de cocher <em>Fast Memory (unstable)</em> dans les options de <em>PPSSPP</em> pour que votre homebrew se lance correctement&#8239;! ^^</p>
<figure id="attachment_10744" aria-describedby="caption-attachment-10744" style="width: 480px" class="wp-caption aligncenter"><img decoding="async" class="wp-image-10744 size-full" src="https://www.customprotocol.com/medias/2016/07/oneluav4-3.png" alt="ONELuaV4 - 3" width="480" height="272" srcset="https://www.customprotocol.com/medias/2016/07/oneluav4-3.png 480w, https://www.customprotocol.com/medias/2016/07/oneluav4-3-300x170.png 300w, https://www.customprotocol.com/medias/2016/07/oneluav4-3-370x210.png 370w, https://www.customprotocol.com/medias/2016/07/oneluav4-3-270x153.png 270w" sizes="(max-width: 480px) 100vw, 480px" /><figcaption id="caption-attachment-10744" class="wp-caption-text">La 3D et la physique gérés sans soucis</figcaption></figure>
<p style="text-align: justify;">Vous avez envie d'ajouter vos propres fonctions en C&#8239;? C'est possible grâce à la fonction <em>os.requiere()</em> via l'API (interface de programmation) incorporé au <strong>ONELua</strong>. Si vous aimez la syntaxe d'écriture du C, vous pouvez maintenant utiliser les opérations du langage comme la somme avec "<em>+="</em> ou la soustraction "<em>-="</em> par exemple.</p>
<p style="text-align: justify;">Vous pouvez aussi dorénavant utiliser tous les boutons présents sur la PSP. Ainsi les boutons de volumes, <em>Home/<img decoding="async" src="http://dl.customprotocol.com/images/5/5c/PS_bouton.png" alt="PS bouton.png" width="16" height="16" /></em>, <img decoding="async" src="http://dl.customprotocol.com/images/1/12/PSP_Note.png" alt="PSP Note.png" width="17" height="16" /> et <img decoding="async" src="http://dl.customprotocol.com/images/9/9c/PSP_Ecran.png" alt="PSP Ecran.png" width="17" height="16" /> sont disponibles.</p>
<figure id="attachment_10745" aria-describedby="caption-attachment-10745" style="width: 480px" class="wp-caption aligncenter"><img decoding="async" class="wp-image-10745 size-full" src="https://www.customprotocol.com/medias/2016/07/oneluav4-4.png" alt="ONELuaV4 - 4" width="480" height="272" srcset="https://www.customprotocol.com/medias/2016/07/oneluav4-4.png 480w, https://www.customprotocol.com/medias/2016/07/oneluav4-4-300x170.png 300w, https://www.customprotocol.com/medias/2016/07/oneluav4-4-370x210.png 370w, https://www.customprotocol.com/medias/2016/07/oneluav4-4-270x153.png 270w" sizes="(max-width: 480px) 100vw, 480px" /><figcaption id="caption-attachment-10745" class="wp-caption-text">Une jolie map réalisée via une fonction, un fichier texte et un fichier de texture</figcaption></figure>
<p style="text-align: justify;">Comme si cela ne suffisait pas, vous pouvez maintenant utiliser les fonctionnalités infrarouges de votre PSP 1000 et si vous possédez une caméra, la <em>Go! Cam</em> ou celle de votre PS Vita, vous pouvez également utiliser des fonctions dédiés.</p>
<figure id="attachment_10746" aria-describedby="caption-attachment-10746" style="width: 480px" class="wp-caption aligncenter"><img decoding="async" class="size-full wp-image-10746" src="https://www.customprotocol.com/medias/2016/07/oneluav4-5.png" alt="De nombreuses informations sur la batterie sont affichés ici" width="480" height="272" srcset="https://www.customprotocol.com/medias/2016/07/oneluav4-5.png 480w, https://www.customprotocol.com/medias/2016/07/oneluav4-5-300x170.png 300w, https://www.customprotocol.com/medias/2016/07/oneluav4-5-370x210.png 370w, https://www.customprotocol.com/medias/2016/07/oneluav4-5-270x153.png 270w" sizes="(max-width: 480px) 100vw, 480px" /><figcaption id="caption-attachment-10746" class="wp-caption-text">De nombreuses informations sur la batterie sont affichés ici</figcaption></figure>
<p style="text-align: justify;">Si vous aimez dessiner des formes, vous allez être servi. Le <strong>ONELua</strong> peut maintenant dessiner des cercles, des triangles, des arcs... avec ou sans dégradé, remplis ou non, partiellement ou entièrement affichés.</p>
<figure id="attachment_10743" aria-describedby="caption-attachment-10743" style="width: 480px" class="wp-caption aligncenter"><img decoding="async" class="wp-image-10743 size-full" src="https://www.customprotocol.com/medias/2016/07/oneluav4-2.png" alt="ONELuaV4 - 2" width="480" height="272" srcset="https://www.customprotocol.com/medias/2016/07/oneluav4-2.png 480w, https://www.customprotocol.com/medias/2016/07/oneluav4-2-300x170.png 300w, https://www.customprotocol.com/medias/2016/07/oneluav4-2-370x210.png 370w, https://www.customprotocol.com/medias/2016/07/oneluav4-2-270x153.png 270w" sizes="(max-width: 480px) 100vw, 480px" /><figcaption id="caption-attachment-10743" class="wp-caption-text">Connaitre ses couleurs, c'est important&#8239;!</figcaption></figure>
<p style="text-align: justify;">De nombreuses autres nouveautés comme de nouveaux effets de <em>splash screen</em>, la possibilité de charger des images BMP, de récupérer de nouvelles données pour les autorisations de fichier ou récupérer la jaquette d'un <em>MP3</em> par exemple sont au menu de cette version <em>V4R1</em>, ainsi que de nouveaux effets 3D et de nouvelles fonctions relatives au <em>hardware</em>. On peut noter également de nombreuses optimisations et corrections de <em>bugs</em>.</p>
<figure id="attachment_5235" aria-describedby="caption-attachment-5235" style="width: 528px" class="wp-caption aligncenter"><a href="http://onelua.x10.mx/"><img decoding="async" class="wp-image-5235 size-full" src="https://www.customprotocol.com/medias/2015/06/bouton-telecharger-v2.png" alt="Bouton télécharger" width="528" height="160" srcset="https://www.customprotocol.com/medias/2015/06/bouton-telecharger-v2.png 528w, https://www.customprotocol.com/medias/2015/06/bouton-telecharger-v2-300x91.png 300w, https://www.customprotocol.com/medias/2015/06/bouton-telecharger-v2-370x112.png 370w, https://www.customprotocol.com/medias/2015/06/bouton-telecharger-v2-270x82.png 270w" sizes="(max-width: 528px) 100vw, 528px" /></a><figcaption id="caption-attachment-5235" class="wp-caption-text"><strong>ONELua </strong>V4R1</figcaption></figure>
<hr />
<p><script src="//platform.twitter.com/widgets.js" async="" charset="utf-8"></script></p>
<p style="text-align: justify;">Peut on dire que le <strong>ONELua</strong> est le meilleur <strong>Lua Player</strong> sur PSP&#8239;? La réponse est oui car celui-ci propose un lot de fonctions conséquents tout en étant optimisé&#8239;! Le trio va continuer de développer le <strong>Lua Player</strong> mais sur d'autres plateformes comme sur PC. On attend cela avec impatience&#8239;!&#8239;;)</p>
<div align="center">
<blockquote class="twitter-tweet" data-lang="fr">
<p dir="ltr" lang="en"><a href="https://twitter.com/gdljjrod">@gdljjrod</a> <a href="https://twitter.com/NEKERAFA">@NEKERAFA</a> <a href="https://twitter.com/Applelo1">@Applelo1</a> <a href="https://twitter.com/HackinformerES">@HackinformerES</a> <a href="https://twitter.com/hashtag/ONElua4PC?src=hash">#ONElua4PC</a> is coming!<br /> ONEluaV4R1 PSP is released, Now Multi-Platform! <a href="https://t.co/t9WJ36pZGk">pic.twitter.com/t9WJ36pZGk</a></p>
<p>— Davis Nuñez (@DevDavisNunez) <a href="https://twitter.com/DevDavisNunez/status/751174452985999361">7 juillet 2016</a></p>
</blockquote>
</div>
<p>L’article <a rel="nofollow" href="https://www.customprotocol.com/programmation/psple-onelua-revient-mise-a-jour-v4r1/">[PSP] Le ONELua revient avec une mise à jour V4R1</a> est apparu en premier sur <a rel="nofollow" href="https://www.customprotocol.com">Custom Protocol</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.customprotocol.com/programmation/psple-onelua-revient-mise-a-jour-v4r1/feed/</wfw:commentRss>
			<slash:comments>3</slash:comments>
		
		
			</item>
	</channel>
</rss>

